diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 70a00c0ecc6..82a0a45f403 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -96,6 +96,7 @@
"packages/google-container": "4.4.0",
"packages/google-dataflow": "2.0.1",
"packages/google-devtools-artifactregistry": "2.0.2",
+ "packages/google-devtools-containeranalysis": "4.4.1",
"packages/google-devtools-cloudbuild": "3.2.0",
"packages/google-iam": "0.2.2",
"packages/google-identity-accesscontextmanager": "2.2.0",
diff --git a/packages/google-devtools-containeranalysis/.OwlBot.yaml b/packages/google-devtools-containeranalysis/.OwlBot.yaml
new file mode 100644
index 00000000000..35ce66f8596
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.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/devtools/containeranalysis/(v.*)/.*-nodejs
+ dest: /owl-bot-staging/google-devtools-containeranalysis/$1
+
+begin-after-commit-hash: fb91803ccef5d7c695139b22788b309e2197856b
+
diff --git a/packages/google-devtools-containeranalysis/.eslintignore b/packages/google-devtools-containeranalysis/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-devtools-containeranalysis/.eslintrc.json b/packages/google-devtools-containeranalysis/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-devtools-containeranalysis/.gitattributes b/packages/google-devtools-containeranalysis/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.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-devtools-containeranalysis/.gitignore b/packages/google-devtools-containeranalysis/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.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-devtools-containeranalysis/.jsdoc.js b/packages/google-devtools-containeranalysis/.jsdoc.js
new file mode 100644
index 00000000000..17b0124cca8
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.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/containeranalysis',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-devtools-containeranalysis/.mocharc.js b/packages/google-devtools-containeranalysis/.mocharc.js
new file mode 100644
index 00000000000..cdb7b752160
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.mocharc.js
@@ -0,0 +1,29 @@
+// 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.
+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-devtools-containeranalysis/.mocharc.json b/packages/google-devtools-containeranalysis/.mocharc.json
new file mode 100644
index 00000000000..670c5e2c24b
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.mocharc.json
@@ -0,0 +1,5 @@
+{
+ "enable-source-maps": true,
+ "throw-deprecation": true,
+ "timeout": 10000
+}
diff --git a/packages/google-devtools-containeranalysis/.nycrc b/packages/google-devtools-containeranalysis/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.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-devtools-containeranalysis/.prettierignore b/packages/google-devtools-containeranalysis/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-devtools-containeranalysis/.prettierrc.js b/packages/google-devtools-containeranalysis/.prettierrc.js
new file mode 100644
index 00000000000..d546a4ad546
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.prettierrc.js
@@ -0,0 +1,17 @@
+// 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.
+
+module.exports = {
+ ...require('gts/.prettierrc.json')
+}
diff --git a/packages/google-devtools-containeranalysis/.repo-metadata.json b/packages/google-devtools-containeranalysis/.repo-metadata.json
new file mode 100644
index 00000000000..984ba800ce1
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/.repo-metadata.json
@@ -0,0 +1,17 @@
+{
+ "repo": "googleapis/google-cloud-node",
+ "default_version": "v1",
+ "issue_tracker": "https://issuetracker.google.com/savedsearches/559742",
+ "language": "nodejs",
+ "api_id": "containeranalysis.googleapis.com",
+ "release_level": "stable",
+ "name": "containeranalysis",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/containeranalysis/latest",
+ "requires_billing": true,
+ "distribution_name": "@google-cloud/containeranalysis",
+ "name_pretty": "Google Container Analysis",
+ "product_documentation": "https://cloud.google.com/container-registry/docs/container-analysis",
+ "codeowner_team": "@googleapis/aap-dpes",
+ "api_shortname": "containeranalysis",
+ "library_type": "GAPIC_AUTO"
+}
diff --git a/packages/google-devtools-containeranalysis/CHANGELOG.md b/packages/google-devtools-containeranalysis/CHANGELOG.md
new file mode 100644
index 00000000000..7b9f34aea79
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/CHANGELOG.md
@@ -0,0 +1,407 @@
+# Changelog
+
+[npm history][1]
+
+[1]: https://www.npmjs.com/package/@google-cloud/containeranalysis?activeTab=versions
+
+## [4.4.1](https://github.com/googleapis/nodejs-containeranalysis/compare/v4.4.0...v4.4.1) (2022-11-10)
+
+
+### Bug Fixes
+
+* **deps:** Use google-gax v3.5.2 ([#447](https://github.com/googleapis/nodejs-containeranalysis/issues/447)) ([c0631d5](https://github.com/googleapis/nodejs-containeranalysis/commit/c0631d54928b9fe6df493f79883341e66d19f0ca))
+* Regenerated protos JS and TS definitions ([#451](https://github.com/googleapis/nodejs-containeranalysis/issues/451)) ([9710e71](https://github.com/googleapis/nodejs-containeranalysis/commit/9710e715ef10471e536b5329e1e71ffe8b7265ec))
+
+## [4.4.0](https://github.com/googleapis/nodejs-containeranalysis/compare/v4.3.0...v4.4.0) (2022-10-06)
+
+
+### Features
+
+* Add new analysis status and cvss version fields ([#443](https://github.com/googleapis/nodejs-containeranalysis/issues/443)) ([2b4db8e](https://github.com/googleapis/nodejs-containeranalysis/commit/2b4db8ee9859823e32de8256853429adf88cf207))
+
+## [4.3.0](https://github.com/googleapis/nodejs-containeranalysis/compare/v4.2.0...v4.3.0) (2022-09-22)
+
+
+### Features
+
+* Accept google-gax instance as a parameter ([#433](https://github.com/googleapis/nodejs-containeranalysis/issues/433)) ([51e82fd](https://github.com/googleapis/nodejs-containeranalysis/commit/51e82fd484752113c48efba4ff42ac838b961056))
+
+
+### Bug Fixes
+
+* Better support for fallback mode ([#427](https://github.com/googleapis/nodejs-containeranalysis/issues/427)) ([c63417b](https://github.com/googleapis/nodejs-containeranalysis/commit/c63417b5728a83518ffd83602d94acc3d537328c))
+* Change import long to require ([#428](https://github.com/googleapis/nodejs-containeranalysis/issues/428)) ([4fd0750](https://github.com/googleapis/nodejs-containeranalysis/commit/4fd075018b8fc34cac0712aff3b15c61096016af))
+* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-containeranalysis/issues/1553)) ([#432](https://github.com/googleapis/nodejs-containeranalysis/issues/432)) ([ea51fef](https://github.com/googleapis/nodejs-containeranalysis/commit/ea51fef4bb638eb1e2da9de5817a44e5652e404e))
+* Remove pip install statements ([#1546](https://github.com/googleapis/nodejs-containeranalysis/issues/1546)) ([#431](https://github.com/googleapis/nodejs-containeranalysis/issues/431)) ([a0e674f](https://github.com/googleapis/nodejs-containeranalysis/commit/a0e674fcf24bac4a870ead8dfc9357609a868981))
+* use google-gax v3.3.0 ([ea51fef](https://github.com/googleapis/nodejs-containeranalysis/commit/ea51fef4bb638eb1e2da9de5817a44e5652e404e))
+
+## [4.2.0](https://github.com/googleapis/nodejs-containeranalysis/compare/v4.1.0...v4.2.0) (2022-07-04)
+
+
+### Features
+
+* support regapic LRO ([1290f13](https://github.com/googleapis/nodejs-containeranalysis/commit/1290f1322a788735340ac1c10b57a38d78396bb8))
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/grafeas to v4 ([#420](https://github.com/googleapis/nodejs-containeranalysis/issues/420)) ([6e40ebe](https://github.com/googleapis/nodejs-containeranalysis/commit/6e40ebe146d61bb6594c3b7e76514250843a5ff0))
+* **issue-417:** adding additional asserts to track flaky error ([#421](https://github.com/googleapis/nodejs-containeranalysis/issues/421)) ([23cd446](https://github.com/googleapis/nodejs-containeranalysis/commit/23cd446962c3e2a3ec00981d87dd9d41c17873ee))
+
+## [4.1.0](https://github.com/googleapis/nodejs-containeranalysis/compare/v4.0.0...v4.1.0) (2022-06-10)
+
+
+### Features
+
+* Import of Grafeas from Github ([#413](https://github.com/googleapis/nodejs-containeranalysis/issues/413)) ([fda2b32](https://github.com/googleapis/nodejs-containeranalysis/commit/fda2b3218680d9f0b81435ba9913d150eeded826))
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/pubsub to v3 ([#410](https://github.com/googleapis/nodejs-containeranalysis/issues/410)) ([fb503c8](https://github.com/googleapis/nodejs-containeranalysis/commit/fb503c89c6e0b8af7c4a4c60cddae7cf8727bd2b))
+
+## [4.0.0](https://github.com/googleapis/nodejs-containeranalysis/compare/v3.4.0...v4.0.0) (2022-05-17)
+
+
+### ⚠ BREAKING CHANGES
+
+* update library to use Node 12 (#408)
+
+### Bug Fixes
+
+* Flaky pubsub test ([#394](https://github.com/googleapis/nodejs-containeranalysis/issues/394)) ([eb74ba8](https://github.com/googleapis/nodejs-containeranalysis/commit/eb74ba886c2a3397d57b3f99fca0fe1df1216f2d))
+
+
+### Build System
+
+* update library to use Node 12 ([#408](https://github.com/googleapis/nodejs-containeranalysis/issues/408)) ([4aeecf8](https://github.com/googleapis/nodejs-containeranalysis/commit/4aeecf8ea7c476aa3dab167766121eeec7346a85))
+
+## [3.4.0](https://github.com/googleapis/nodejs-containeranalysis/compare/v3.3.0...v3.4.0) (2022-04-05)
+
+
+### Features
+
+* AuditConfig for IAM v1 ([#388](https://github.com/googleapis/nodejs-containeranalysis/issues/388)) ([f4d14d7](https://github.com/googleapis/nodejs-containeranalysis/commit/f4d14d7734054b8bd7037b189e7af1876e119f51))
+
+## [3.3.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.2.0...v3.3.0) (2021-11-11)
+
+
+### Features
+
+* Updating the grafeas protos to include compliance and intoto attestation protos ([#352](https://www.github.com/googleapis/nodejs-containeranalysis/issues/352)) ([ea334fb](https://www.github.com/googleapis/nodejs-containeranalysis/commit/ea334fb38ba769af3e7473db9414db0850d2bbdb))
+
+## [3.2.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.8...v3.2.0) (2021-08-23)
+
+
+### Features
+
+* turns on self-signed JWT feature flag ([#339](https://www.github.com/googleapis/nodejs-containeranalysis/issues/339)) ([98de66a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/98de66a7ad503a0b1e5f4d3f8fd94f49ac156dfa))
+
+### [3.1.8](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.7...v3.1.8) (2021-08-17)
+
+
+### Bug Fixes
+
+* **build:** migrate to using main branch ([#336](https://www.github.com/googleapis/nodejs-containeranalysis/issues/336)) ([3fbaf02](https://www.github.com/googleapis/nodejs-containeranalysis/commit/3fbaf02e2dc83730d1222255ad2f6ab6d34f4be0))
+* **deps:** google-gax v2.24.1 ([#338](https://www.github.com/googleapis/nodejs-containeranalysis/issues/338)) ([6f0b19a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/6f0b19a20b73f542c6e88f954fc3e159b9e73f82))
+
+### [3.1.7](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.6...v3.1.7) (2021-07-21)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.1 ([#326](https://www.github.com/googleapis/nodejs-containeranalysis/issues/326)) ([9e3f627](https://www.github.com/googleapis/nodejs-containeranalysis/commit/9e3f62734cecd16c7bae394665b50e7212f55158))
+* Updating WORKSPACE files to use the newest version of the Typescript generator. ([#329](https://www.github.com/googleapis/nodejs-containeranalysis/issues/329)) ([5403fb4](https://www.github.com/googleapis/nodejs-containeranalysis/commit/5403fb42c84354d439ea8f6414b6b7e28c57f5c1))
+
+### [3.1.6](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.5...v3.1.6) (2021-07-01)
+
+
+### Bug Fixes
+
+* **deps:** require google-gax v2.17.0 ([#322](https://www.github.com/googleapis/nodejs-containeranalysis/issues/322)) ([3c841c0](https://www.github.com/googleapis/nodejs-containeranalysis/commit/3c841c05e58e128080384321e1145d56c4b94cdf))
+
+### [3.1.5](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.4...v3.1.5) (2021-06-30)
+
+
+### Bug Fixes
+
+* make request optional in all cases ([#318](https://www.github.com/googleapis/nodejs-containeranalysis/issues/318)) ([35e8196](https://www.github.com/googleapis/nodejs-containeranalysis/commit/35e81964f971d4272b0c14f4e8b6e790229ba803))
+
+### [3.1.4](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.3...v3.1.4) (2021-05-25)
+
+
+### Bug Fixes
+
+* GoogleAdsError missing using generator version after 1.3.0 ([#308](https://www.github.com/googleapis/nodejs-containeranalysis/issues/308)) ([040323a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/040323ad90f03e1d50ecb0036c3bf62352eada09))
+
+### [3.1.3](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.2...v3.1.3) (2021-05-12)
+
+
+### Bug Fixes
+
+* use require() to load JSON protos ([#301](https://www.github.com/googleapis/nodejs-containeranalysis/issues/301)) ([46bed2e](https://www.github.com/googleapis/nodejs-containeranalysis/commit/46bed2e0b0dadaae2504f2c765d13f2d46f4a0b0))
+
+### [3.1.2](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.1...v3.1.2) (2021-05-07)
+
+
+### Bug Fixes
+
+* **deps:** require google-gax v2.12.0 ([#298](https://www.github.com/googleapis/nodejs-containeranalysis/issues/298)) ([74b5257](https://www.github.com/googleapis/nodejs-containeranalysis/commit/74b5257e95447dbb4b6652f6b7292eb1c27d403b))
+
+### [3.1.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.1.0...v3.1.1) (2021-04-27)
+
+
+### Bug Fixes
+
+* specify valid go_package option ([#293](https://www.github.com/googleapis/nodejs-containeranalysis/issues/293)) ([84ba201](https://www.github.com/googleapis/nodejs-containeranalysis/commit/84ba201c2d2eb81faf36461cf1ff3bfccf33f5ed))
+
+## [3.1.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.0.1...v3.1.0) (2021-01-14)
+
+
+### Features
+
+* adds style enum ([641da22](https://www.github.com/googleapis/nodejs-containeranalysis/commit/641da22ad3af60cff2e9f796d47d267d4d414f37))
+
+### [3.0.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v3.0.0...v3.0.1) (2020-11-25)
+
+
+### Bug Fixes
+
+* **browser:** check for fetch on window ([#267](https://www.github.com/googleapis/nodejs-containeranalysis/issues/267)) ([003a128](https://www.github.com/googleapis/nodejs-containeranalysis/commit/003a128f84f0a7cdcff34ba77dc60d88a4d7969b))
+
+## [3.0.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v2.1.1...v3.0.0) (2020-11-16)
+
+
+### ⚠ BREAKING CHANGES
+
+* added getVulnerabilityOccurrencesSummary to v1 (#263)
+
+### Features
+
+* added getVulnerabilityOccurrencesSummary to v1 ([#263](https://www.github.com/googleapis/nodejs-containeranalysis/issues/263)) ([8f3ff4c](https://www.github.com/googleapis/nodejs-containeranalysis/commit/8f3ff4c09d7272592e4599ff8f33c7d90b4dd308))
+
+### [2.1.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v2.1.0...v2.1.1) (2020-07-10)
+
+
+### Bug Fixes
+
+* typeo in nodejs .gitattribute ([#231](https://www.github.com/googleapis/nodejs-containeranalysis/issues/231)) ([c87033a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/c87033a3c14065f7b461b4fc04751e67a40f2325))
+
+## [2.1.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v2.0.0...v2.1.0) (2020-06-28)
+
+
+### Features
+
+* check status of long running operation by its name ([#209](https://www.github.com/googleapis/nodejs-containeranalysis/issues/209)) ([45420a3](https://www.github.com/googleapis/nodejs-containeranalysis/commit/45420a304799cbb1114b0dbde866fcbbb10c3390))
+* move ts target to es2018 from es2016 ([#220](https://www.github.com/googleapis/nodejs-containeranalysis/issues/220)) ([7397f8f](https://www.github.com/googleapis/nodejs-containeranalysis/commit/7397f8f29a31da5f50b2e9d658a40395dec41772))
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/pubsub to v2 ([#215](https://www.github.com/googleapis/nodejs-containeranalysis/issues/215)) ([83cf246](https://www.github.com/googleapis/nodejs-containeranalysis/commit/83cf2460b925c3f287dbb643eeea83d7ba958322))
+* handle fallback option properly ([#225](https://www.github.com/googleapis/nodejs-containeranalysis/issues/225)) ([623535d](https://www.github.com/googleapis/nodejs-containeranalysis/commit/623535de84418c8b2b9dfafe1d9f49c898f0c5d5))
+* remove unneeded common protos in generated proto list ([#207](https://www.github.com/googleapis/nodejs-containeranalysis/issues/207)) ([3cdfed3](https://www.github.com/googleapis/nodejs-containeranalysis/commit/3cdfed35ea873951dd1eb8228707c412b2747b8d))
+* synth.py clean up for multiple version ([#214](https://www.github.com/googleapis/nodejs-containeranalysis/issues/214)) ([67ce7d7](https://www.github.com/googleapis/nodejs-containeranalysis/commit/67ce7d71377377974b00058e63cf8cffceb72dbe))
+
+## [2.0.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.10.0...v2.0.0) (2020-04-23)
+
+
+### ⚠ BREAKING CHANGES
+
+* The library now supports Node.js v10+. The last version to support Node.js v8 is tagged legacy-8 on NPM.
+
+### Features
+
+* drop node8 support, support for async iterators ([#167](https://www.github.com/googleapis/nodejs-containeranalysis/issues/167)) ([8990c34](https://www.github.com/googleapis/nodejs-containeranalysis/commit/8990c34e6b8f77fb7771f8f525a34e95cdaab104))
+
+
+### Bug Fixes
+
+* remove eslint, update gax, fix generated protos, run the generator ([#180](https://www.github.com/googleapis/nodejs-containeranalysis/issues/180)) ([1f75445](https://www.github.com/googleapis/nodejs-containeranalysis/commit/1f754450685c13b224de818052936a10d711e4fc))
+* **deps:** update dependency @google-cloud/grafeas to v3 ([#189](https://www.github.com/googleapis/nodejs-containeranalysis/issues/189)) ([df59146](https://www.github.com/googleapis/nodejs-containeranalysis/commit/df59146d4433b10953761989e9059e5a82d66832))
+* **samples:** should use effective_severity field ([#200](https://www.github.com/googleapis/nodejs-containeranalysis/issues/200)) ([7e6146d](https://www.github.com/googleapis/nodejs-containeranalysis/commit/7e6146d1c98b964564253f17cf953b1f422a9b56))
+
+## [1.10.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.9.0...v1.10.0) (2020-03-06)
+
+
+### Features
+
+* deferred client initialization ([#152](https://www.github.com/googleapis/nodejs-containeranalysis/issues/152)) ([0a01d71](https://www.github.com/googleapis/nodejs-containeranalysis/commit/0a01d71cc9b7f45c78215838d13c506e316d904d))
+
+## [1.9.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.8.0...v1.9.0) (2020-02-29)
+
+
+### Features
+
+* export protos in src/index.ts ([29af69b](https://www.github.com/googleapis/nodejs-containeranalysis/commit/29af69b2e1af8763ee892d9325d089e401198330))
+
+## [1.8.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.7.1...v1.8.0) (2020-02-12)
+
+
+### Features
+
+* move API to typescript code generation ([#135](https://www.github.com/googleapis/nodejs-containeranalysis/issues/135)) ([b2d88af](https://www.github.com/googleapis/nodejs-containeranalysis/commit/b2d88af53e958360b1c91035b8ac5d9cbb0a37e5))
+
+### [1.7.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.7.0...v1.7.1) (2020-02-05)
+
+
+### Bug Fixes
+
+* proto annotations; enum, bytes, and Long types now accept strings ([34b461f](https://www.github.com/googleapis/nodejs-containeranalysis/commit/34b461f4f721fbf0bd1908518d1a9f16ff180270))
+
+## [1.7.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.6.1...v1.7.0) (2020-01-02)
+
+
+### Features
+
+* add options for attestation and vulnerability requests ([#114](https://www.github.com/googleapis/nodejs-containeranalysis/issues/114)) ([1c3c4b0](https://www.github.com/googleapis/nodejs-containeranalysis/commit/1c3c4b08b5b3560a5d583a876417f21895badfd1))
+
+### [1.6.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.6.0...v1.6.1) (2019-12-05)
+
+
+### Bug Fixes
+
+* **deps:** pin TypeScript below 3.7.0 ([9a171a3](https://www.github.com/googleapis/nodejs-containeranalysis/commit/9a171a3b10b3a0bf6bf746ac8f093c349062f61e))
+
+## [1.6.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.5.1...v1.6.0) (2019-11-19)
+
+
+### Features
+
+* add resource descriptors ([#109](https://www.github.com/googleapis/nodejs-containeranalysis/issues/109)) ([f06a0a3](https://www.github.com/googleapis/nodejs-containeranalysis/commit/f06a0a3f646dbc276628217104aa630697e9f789))
+
+
+### Bug Fixes
+
+* import long into proto ts declaration file ([#103](https://www.github.com/googleapis/nodejs-containeranalysis/issues/103)) ([1b31db6](https://www.github.com/googleapis/nodejs-containeranalysis/commit/1b31db607243d73a936e12e9e00252fe87716014))
+* **docs:** bump release level to GA ([#107](https://www.github.com/googleapis/nodejs-containeranalysis/issues/107)) ([15366fa](https://www.github.com/googleapis/nodejs-containeranalysis/commit/15366fa0e805ba0e707cc41c2610ea6dec9f791a))
+* **docs:** snippets are now replaced in jsdoc comments ([#102](https://www.github.com/googleapis/nodejs-containeranalysis/issues/102)) ([29523b1](https://www.github.com/googleapis/nodejs-containeranalysis/commit/29523b1b14142c04d8010f87db366c14f83035ef))
+
+### [1.5.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.5.0...v1.5.1) (2019-10-22)
+
+
+### Bug Fixes
+
+* **deps:** bump google-gax to 1.7.5 ([#96](https://www.github.com/googleapis/nodejs-containeranalysis/issues/96)) ([4d03e9a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/4d03e9a4b116753b28029d7e171b8dc4409938ac))
+
+## [1.5.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.4.0...v1.5.0) (2019-10-09)
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/pubsub to v1 ([#84](https://www.github.com/googleapis/nodejs-containeranalysis/issues/84)) ([3592d57](https://www.github.com/googleapis/nodejs-containeranalysis/commit/3592d57))
+* use compatible version of google-gax ([894a286](https://www.github.com/googleapis/nodejs-containeranalysis/commit/894a286))
+
+
+### Features
+
+* .d.ts for protos ([#86](https://www.github.com/googleapis/nodejs-containeranalysis/issues/86)) ([0c2c19c](https://www.github.com/googleapis/nodejs-containeranalysis/commit/0c2c19c))
+
+## [1.4.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.3.3...v1.4.0) (2019-09-16)
+
+
+### Bug Fixes
+
+* set proper version # for x-goog-api-client ([8245809](https://www.github.com/googleapis/nodejs-containeranalysis/commit/8245809))
+* **deps:** update dependency @google-cloud/pubsub to ^0.32.0 ([#81](https://www.github.com/googleapis/nodejs-containeranalysis/issues/81)) ([7116630](https://www.github.com/googleapis/nodejs-containeranalysis/commit/7116630))
+* **docs:** remove anchor from reference doc link ([658df48](https://www.github.com/googleapis/nodejs-containeranalysis/commit/658df48))
+
+
+### Features
+
+* load protos from JSON, grpc-fallback support ([766fa96](https://www.github.com/googleapis/nodejs-containeranalysis/commit/766fa96))
+
+### [1.3.3](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.3.2...v1.3.3) (2019-08-16)
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/pubsub to ^0.31.0 ([#71](https://www.github.com/googleapis/nodejs-containeranalysis/issues/71)) ([fcc304a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/fcc304a))
+
+### [1.3.2](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.3.1...v1.3.2) (2019-08-03)
+
+
+### Bug Fixes
+
+* allow calls with no request, add JSON proto ([4483e7e](https://www.github.com/googleapis/nodejs-containeranalysis/commit/4483e7e))
+
+### [1.3.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.3.0...v1.3.1) (2019-07-29)
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/pubsub to ^0.30.0 ([#59](https://www.github.com/googleapis/nodejs-containeranalysis/issues/59)) ([d2871b6](https://www.github.com/googleapis/nodejs-containeranalysis/commit/d2871b6))
+
+## [1.3.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.2.2...v1.3.0) (2019-07-15)
+
+
+### Features
+
+* add occurrencePath template method ([#57](https://www.github.com/googleapis/nodejs-containeranalysis/issues/57)) ([9d66e07](https://www.github.com/googleapis/nodejs-containeranalysis/commit/9d66e07))
+
+### [1.2.2](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.2.1...v1.2.2) (2019-06-26)
+
+
+### Bug Fixes
+
+* **docs:** link to reference docs section on googleapis.dev ([#51](https://www.github.com/googleapis/nodejs-containeranalysis/issues/51)) ([1e1fb10](https://www.github.com/googleapis/nodejs-containeranalysis/commit/1e1fb10))
+
+### [1.2.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.2.0...v1.2.1) (2019-06-24)
+
+
+### Bug Fixes
+
+* **docs:** don't yet advertise ga, as there may be some breaking changes coming ([#49](https://www.github.com/googleapis/nodejs-containeranalysis/issues/49)) ([55d96bf](https://www.github.com/googleapis/nodejs-containeranalysis/commit/55d96bf))
+
+## [1.2.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.1.0...v1.2.0) (2019-06-19)
+
+
+### Features
+
+* adds getGrafeasClient() method on ContainerAnalysisClient instance ([#46](https://www.github.com/googleapis/nodejs-containeranalysis/issues/46)) ([0f03c96](https://www.github.com/googleapis/nodejs-containeranalysis/commit/0f03c96))
+
+## [1.1.0](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.0.2...v1.1.0) (2019-06-18)
+
+
+### Features
+
+* add v1 client ([#43](https://www.github.com/googleapis/nodejs-containeranalysis/issues/43)) ([0707792](https://www.github.com/googleapis/nodejs-containeranalysis/commit/0707792))
+
+### [1.0.2](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.0.1...v1.0.2) (2019-06-14)
+
+
+### Bug Fixes
+
+* **docs:** move to new client docs URL ([#39](https://www.github.com/googleapis/nodejs-containeranalysis/issues/39)) ([debea92](https://www.github.com/googleapis/nodejs-containeranalysis/commit/debea92))
+
+### [1.0.1](https://www.github.com/googleapis/nodejs-containeranalysis/compare/v1.0.0...v1.0.1) (2019-06-11)
+
+
+### Bug Fixes
+
+* **deps:** update dependency @google-cloud/pubsub to ^0.29.0 ([#36](https://www.github.com/googleapis/nodejs-containeranalysis/issues/36)) ([2a74034](https://www.github.com/googleapis/nodejs-containeranalysis/commit/2a74034))
+
+## 1.0.0 (2019-06-08)
+
+
+### ⚠ BREAKING CHANGES
+
+* upgrade engines field to >=8.10.0 (#2)
+
+### Bug Fixes
+
+* **deps:** update dependency google-gax to v1 ([22b33b7](https://www.github.com/googleapis/nodejs-containeranalysis/commit/22b33b7))
+* **deps:** update dependency google-gax to v1 ([#14](https://www.github.com/googleapis/nodejs-containeranalysis/issues/14)) ([84e489b](https://www.github.com/googleapis/nodejs-containeranalysis/commit/84e489b))
+* **docs:** fix dead links ([#16](https://www.github.com/googleapis/nodejs-containeranalysis/issues/16)) ([0dee92f](https://www.github.com/googleapis/nodejs-containeranalysis/commit/0dee92f))
+* do not fail test if nyc did not run ([1e2f13a](https://www.github.com/googleapis/nodejs-containeranalysis/commit/1e2f13a))
+
+
+### Build System
+
+* upgrade engines field to >=8.10.0 ([#2](https://www.github.com/googleapis/nodejs-containeranalysis/issues/2)) ([e95e090](https://www.github.com/googleapis/nodejs-containeranalysis/commit/e95e090))
+
+
+### Features
+
+* add doc expressions and update CI ([#8](https://www.github.com/googleapis/nodejs-containeranalysis/issues/8)) ([e712189](https://www.github.com/googleapis/nodejs-containeranalysis/commit/e712189))
+* support apiEndpoint override in client constructor ([#34](https://www.github.com/googleapis/nodejs-containeranalysis/issues/34)) ([9146c76](https://www.github.com/googleapis/nodejs-containeranalysis/commit/9146c76))
diff --git a/packages/google-devtools-containeranalysis/CODE_OF_CONDUCT.md b/packages/google-devtools-containeranalysis/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/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-devtools-containeranalysis/CONTRIBUTING.md b/packages/google-devtools-containeranalysis/CONTRIBUTING.md
new file mode 100644
index 00000000000..4b731d89a9c
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/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 Container Analysis 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=containeranalysis.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-devtools-containeranalysis/LICENSE b/packages/google-devtools-containeranalysis/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/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-devtools-containeranalysis/README.md b/packages/google-devtools-containeranalysis/README.md
new file mode 100644
index 00000000000..959e14cf242
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/README.md
@@ -0,0 +1,175 @@
+[//]: # "This README.md file is auto-generated, all changes to this file will be lost."
+[//]: # "To regenerate it, use `python -m synthtool`."
+
+
+# [Google Container Analysis: Node.js Client](https://github.com/googleapis/google-cloud-node)
+
+[![release level](https://img.shields.io/badge/release%20level-stable-brightgreen.svg?style=flat)](https://cloud.google.com/terms/launch-stages)
+[![npm version](https://img.shields.io/npm/v/@google-cloud/containeranalysis.svg)](https://www.npmjs.org/package/@google-cloud/containeranalysis)
+
+
+
+
+Container Analysis API client for Node.js
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-devtools-containeranalysis/CHANGELOG.md).
+
+* [Google Container Analysis Node.js Client API Reference][client-docs]
+* [Google Container Analysis Documentation][product-docs]
+* [github.com/googleapis/google-cloud-node/packages/google-devtools-containeranalysis](https://github.com/googleapis/google-cloud-node/tree/main/packages/google-devtools-containeranalysis)
+
+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)
+
+* [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 Container Analysis 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/containeranalysis
+```
+
+
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/google-cloud-node/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample.
+
+| Sample | Source Code | Try it |
+| --------------------------- | --------------------------------- | ------ |
+| Container_analysis.get_iam_policy | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.get_iam_policy.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.get_iam_policy.js,samples/README.md) |
+| Container_analysis.get_vulnerability_occurrences_summary | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.get_vulnerability_occurrences_summary.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.get_vulnerability_occurrences_summary.js,samples/README.md) |
+| Container_analysis.set_iam_policy | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.set_iam_policy.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.set_iam_policy.js,samples/README.md) |
+| Container_analysis.test_iam_permissions | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.test_iam_permissions.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/container_analysis.test_iam_permissions.js,samples/README.md) |
+| Grafeas.batch_create_notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.batch_create_notes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.batch_create_notes.js,samples/README.md) |
+| Grafeas.batch_create_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.batch_create_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.batch_create_occurrences.js,samples/README.md) |
+| Grafeas.create_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.create_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.create_note.js,samples/README.md) |
+| Grafeas.create_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.create_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.create_occurrence.js,samples/README.md) |
+| Grafeas.delete_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.delete_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.delete_note.js,samples/README.md) |
+| Grafeas.delete_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.delete_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.delete_occurrence.js,samples/README.md) |
+| Grafeas.get_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.get_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.get_note.js,samples/README.md) |
+| Grafeas.get_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.get_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.get_occurrence.js,samples/README.md) |
+| Grafeas.get_occurrence_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.get_occurrence_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.get_occurrence_note.js,samples/README.md) |
+| Grafeas.list_note_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.list_note_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.list_note_occurrences.js,samples/README.md) |
+| Grafeas.list_notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.list_notes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.list_notes.js,samples/README.md) |
+| Grafeas.list_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.list_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.list_occurrences.js,samples/README.md) |
+| Grafeas.update_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.update_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.update_note.js,samples/README.md) |
+| Grafeas.update_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.update_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1/grafeas.update_occurrence.js,samples/README.md) |
+| Container_analysis_v1_beta1.get_iam_policy | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.get_iam_policy.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.get_iam_policy.js,samples/README.md) |
+| Container_analysis_v1_beta1.get_scan_config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.get_scan_config.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.get_scan_config.js,samples/README.md) |
+| Container_analysis_v1_beta1.list_scan_configs | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.list_scan_configs.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.list_scan_configs.js,samples/README.md) |
+| Container_analysis_v1_beta1.set_iam_policy | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.set_iam_policy.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.set_iam_policy.js,samples/README.md) |
+| Container_analysis_v1_beta1.test_iam_permissions | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.test_iam_permissions.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.test_iam_permissions.js,samples/README.md) |
+| Container_analysis_v1_beta1.update_scan_config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.update_scan_config.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/container_analysis_v1_beta1.update_scan_config.js,samples/README.md) |
+| Grafeas_v1_beta1.batch_create_notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.batch_create_notes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.batch_create_notes.js,samples/README.md) |
+| Grafeas_v1_beta1.batch_create_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.batch_create_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.batch_create_occurrences.js,samples/README.md) |
+| Grafeas_v1_beta1.create_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.create_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.create_note.js,samples/README.md) |
+| Grafeas_v1_beta1.create_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.create_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.create_occurrence.js,samples/README.md) |
+| Grafeas_v1_beta1.delete_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.delete_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.delete_note.js,samples/README.md) |
+| Grafeas_v1_beta1.delete_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.delete_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.delete_occurrence.js,samples/README.md) |
+| Grafeas_v1_beta1.get_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_note.js,samples/README.md) |
+| Grafeas_v1_beta1.get_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_occurrence.js,samples/README.md) |
+| Grafeas_v1_beta1.get_occurrence_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_occurrence_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_occurrence_note.js,samples/README.md) |
+| Grafeas_v1_beta1.get_vulnerability_occurrences_summary | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_vulnerability_occurrences_summary.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.get_vulnerability_occurrences_summary.js,samples/README.md) |
+| Grafeas_v1_beta1.list_note_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.list_note_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.list_note_occurrences.js,samples/README.md) |
+| Grafeas_v1_beta1.list_notes | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.list_notes.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.list_notes.js,samples/README.md) |
+| Grafeas_v1_beta1.list_occurrences | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.list_occurrences.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.list_occurrences.js,samples/README.md) |
+| Grafeas_v1_beta1.update_note | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.update_note.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.update_note.js,samples/README.md) |
+| Grafeas_v1_beta1.update_occurrence | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.update_occurrence.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/generated/v1beta1/grafeas_v1_beta1.update_occurrence.js,samples/README.md) |
+| Quickstart | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/quickstart.js,samples/README.md) |
+| Quickstart.test | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-devtools-containeranalysis/samples/test/quickstart.test.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/google-cloud-node&page=editor&open_in_editor=packages/google-devtools-containeranalysis/samples/test/quickstart.test.js,samples/README.md) |
+
+
+
+The [Google Container Analysis 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/containeranalysis@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/google-cloud-node/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/google-cloud-node/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/containeranalysis/latest
+[product-docs]: https://cloud.google.com/container-registry/docs/container-analysis
+[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=containeranalysis.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-devtools-containeranalysis/linkinator.config.json b/packages/google-devtools-containeranalysis/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/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-devtools-containeranalysis/owlbot.py b/packages/google-devtools-containeranalysis/owlbot.py
new file mode 100644
index 00000000000..45163103fb9
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/owlbot.py
@@ -0,0 +1,77 @@
+# 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.
+
+"""This script is used to synthesize generated parts of this library."""
+
+import synthtool as s
+import synthtool.gcp as gcp
+import synthtool.languages.node_mono_repo as node
+import logging
+import os
+import json
+import pathlib
+
+def patch(library: pathlib.Path):
+ # # fix the URL of grafeas.io (this is already fixed upstream).
+ s.replace(library / 'src/v1beta1/*.ts',
+ 'grafeas.io',
+ 'https://grafeas.io')
+
+ # perform surgery inserting the Grafeas client.
+ s.replace(library / "src/v1/container_analysis_client.ts",
+ """import type \* as gax from \'google-gax\';""",
+ """import type * as gax from 'google-gax';
+import {GrafeasClient} from '@google-cloud/grafeas';""")
+ s.replace(library / "src/v1/container_analysis_client.ts", "^}",
+ r"""
+ /**
+ * Returns an instance of a @google-cloud/grafeas client, configured to
+ * connect to Google Cloud's Container Analysis API. For documentation
+ * on this client, see:
+ * https://googleapis.dev/nodejs/grafeas/latest/index.html
+ *
+ * @returns {GrafeasClient} - An instance of a Grafeas client.
+ *
+ */
+ getGrafeasClient() {
+ return new GrafeasClient(this._opts as {});
+ }
+ }
+ """)
+ s.replace(library / "src/v1beta1/grafeas_v1_beta1_client*.*", "google.devtools.containeranalysis", "grafeas")
+
+ to_remove = [
+ library / 'src/v1/grafeas_client.ts',
+ library / 'src/v1/grafeas_client_config.json',
+ library / 'test/gapic_grafeas_v1.ts',
+ ]
+ for filePath in to_remove:
+ if os.path.exists(filePath):
+ os.unlink(filePath)
+
+
+node.owlbot_main(relative_dir="packages/google-devtools-containeranalysis",staging_excludes=[
+ 'packages/google-devtools-containeranalysis/package.json', 'packages/google-devtools-containeranalysis/README.md',
+ 'packages/google-devtools-containeranalysis/src/v1beta1/index.ts', 'packages/google-devtools-containeranalysis/src/v1/index.ts', 'packages/google-devtools-containeranalysis/tslint.json', 'packages/google-devtools-containeranalysis/src/index.ts'],
+ patch_staging=patch)
+
+# Add beta version GrafeasClient to export
+s.replace('packages/google-devtools-containeranalysis/src/index.ts',
+ r"""
+export \{v1, v1beta1, ContainerAnalysisClient\};
+export default \{v1, v1beta1, ContainerAnalysisClient\};""",
+ 'const GrafeasClient = v1beta1.GrafeasV1Beta1Client;\n' +
+ 'type GrafeasClient = v1beta1.GrafeasV1Beta1Client;\n\n' +
+ 'export {v1, v1beta1, ContainerAnalysisClient, GrafeasClient};\n' +
+ 'export default {v1, v1beta1, ContainerAnalysisClient, GrafeasClient};')
diff --git a/packages/google-devtools-containeranalysis/package.json b/packages/google-devtools-containeranalysis/package.json
new file mode 100644
index 00000000000..65c2e805711
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/package.json
@@ -0,0 +1,73 @@
+{
+ "name": "@google-cloud/containeranalysis",
+ "repository": {
+ "type": "git",
+ "directory": "packages/google-devtools-containeranalysis",
+ "url": "https://github.com/googleapis/google-cloud-node.git"
+ },
+ "version": "4.4.1",
+ "author": "Google LLC",
+ "description": "Container Analysis API client for Node.js",
+ "main": "build/src/index.js",
+ "files": [
+ "build/protos",
+ "build/src"
+ ],
+ "keywords": [
+ "google apis client",
+ "google api client",
+ "google apis",
+ "google api",
+ "google",
+ "google cloud platform",
+ "google cloud",
+ "cloud",
+ "google containeranalysis",
+ "containeranalysis",
+ "Container Analysis API"
+ ],
+ "dependencies": {
+ "@google-cloud/grafeas": "^4.0.0",
+ "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": "^9.0.0",
+ "typescript": "^4.6.4",
+ "webpack": "^5.0.0",
+ "webpack-cli": "^4.0.0"
+ },
+ "scripts": {
+ "test": "c8 mocha build/test",
+ "samples-test": "npm run compile && cd samples/ && npm link ../ && npm i && npm test",
+ "system-test": "npm run compile && c8 mocha build/system-test",
+ "docs": "jsdoc -c .jsdoc.js",
+ "lint": "gts check",
+ "fix": "gts fix",
+ "docs-test": "linkinator docs",
+ "clean": "gts clean",
+ "compile": "tsc -p . && cp -r protos build/",
+ "compile-protos": "compileProtos src",
+ "predocs-test": "npm run docs",
+ "prepare": "npm run compile-protos && npm run compile",
+ "prelint": "cd samples; npm link ../; npm install",
+ "precompile": "gts clean"
+ },
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "homepage": "https://github.com/googleapis/google-cloud-node/tree/main/packages/google-devtools-containeranalysis"
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1/containeranalysis.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1/containeranalysis.proto
new file mode 100644
index 00000000000..c1bda557cd6
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1/containeranalysis.proto
@@ -0,0 +1,156 @@
+// 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.devtools.containeranalysis.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "grafeas/v1/severity.proto";
+
+option csharp_namespace = "Google.Cloud.DevTools.ContainerAnalysis.V1";
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1;containeranalysis";
+option java_multiple_files = true;
+option java_package = "com.google.containeranalysis.v1";
+option objc_class_prefix = "GCA";
+option ruby_package = "Google::Cloud::ContainerAnalysis::V1";
+option php_namespace = "Google\\Cloud\\ContainerAnalysis\\V1";
+
+// Retrieves analysis results of Cloud components such as Docker container
+// images. The Container Analysis API is an implementation of the
+// [Grafeas](https://grafeas.io) API.
+//
+// Analysis results are stored as a series of occurrences. An `Occurrence`
+// contains information about a specific analysis instance on a resource. An
+// occurrence refers to a `Note`. A note contains details describing the
+// analysis and is generally stored in a separate project, called a `Provider`.
+// Multiple occurrences can refer to the same note.
+//
+// For example, an SSL vulnerability could affect multiple images. In this case,
+// there would be one note for the vulnerability and an occurrence for each
+// image with the vulnerability referring to that note.
+service ContainerAnalysis {
+ option (google.api.default_host) = "containeranalysis.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Sets the access control policy on the specified note or occurrence.
+ // Requires `containeranalysis.notes.setIamPolicy` or
+ // `containeranalysis.occurrences.setIamPolicy` permission if the resource is
+ // a note or an occurrence, respectively.
+ //
+ // The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
+ // notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
+ // occurrences.
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=projects/*/notes/*}:setIamPolicy"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{resource=projects/*/occurrences/*}:setIamPolicy"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "resource,policy";
+ }
+
+ // Gets the access control policy for a note or an occurrence resource.
+ // Requires `containeranalysis.notes.setIamPolicy` or
+ // `containeranalysis.occurrences.setIamPolicy` permission if the resource is
+ // a note or occurrence, respectively.
+ //
+ // The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
+ // notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
+ // occurrences.
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=projects/*/notes/*}:getIamPolicy"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{resource=projects/*/occurrences/*}:getIamPolicy"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "resource";
+ }
+
+ // Returns the permissions that a caller has on the specified note or
+ // occurrence. Requires list permission on the project (for example,
+ // `containeranalysis.notes.list`).
+ //
+ // The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
+ // notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
+ // occurrences.
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1/{resource=projects/*/notes/*}:testIamPermissions"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{resource=projects/*/occurrences/*}:testIamPermissions"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "resource,permissions";
+ }
+
+ // Gets a summary of the number and severity of occurrences.
+ rpc GetVulnerabilityOccurrencesSummary(GetVulnerabilityOccurrencesSummaryRequest) returns (VulnerabilityOccurrencesSummary) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*}/occurrences:vulnerabilitySummary"
+ };
+ option (google.api.method_signature) = "parent,filter";
+ }
+}
+
+// Request to get a vulnerability summary for some set of occurrences.
+message GetVulnerabilityOccurrencesSummaryRequest {
+ // Required. The name of the project to get a vulnerability summary for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
+
+ // The filter expression.
+ string filter = 2;
+}
+
+// A summary of how many vulnerability occurrences there are per resource and
+// severity type.
+message VulnerabilityOccurrencesSummary {
+ // Per resource and severity counts of fixable and total vulnerabilities.
+ message FixableTotalByDigest {
+ // The affected resource.
+ string resource_uri = 1;
+
+ // The severity for this count. SEVERITY_UNSPECIFIED indicates total across
+ // all severities.
+ grafeas.v1.Severity severity = 2;
+
+ // The number of fixable vulnerabilities associated with this resource.
+ int64 fixable_count = 3;
+
+ // The total number of vulnerabilities associated with this resource.
+ int64 total_count = 4;
+ }
+
+ // A listing by resource of the number of fixable and total vulnerabilities.
+ repeated FixableTotalByDigest counts = 1;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/attestation/attestation.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/attestation/attestation.proto
new file mode 100644
index 00000000000..0d3d6c9fd8c
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/attestation/attestation.proto
@@ -0,0 +1,170 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.attestation;
+
+import "google/devtools/containeranalysis/v1beta1/common/common.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/attestation;attestation";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.attestation";
+option objc_class_prefix = "GRA";
+
+// An attestation wrapper with a PGP-compatible signature. This message only
+// supports `ATTACHED` signatures, where the payload that is signed is included
+// alongside the signature itself in the same file.
+message PgpSignedAttestation {
+ // Required. The raw content of the signature, as output by GNU Privacy Guard
+ // (GPG) or equivalent. Since this message only supports attached signatures,
+ // the payload that was signed must be attached. While the signature format
+ // supported is dependent on the verification implementation, currently only
+ // ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather than
+ // `--clearsign` to gpg) are supported. Concretely, `gpg --sign --armor
+ // --output=signature.gpg payload.json` will create the signature content
+ // expected in this field in `signature.gpg` for the `payload.json`
+ // attestation payload.
+ string signature = 1;
+
+ // Type (for example schema) of the attestation payload that was signed.
+ enum ContentType {
+ // `ContentType` is not set.
+ CONTENT_TYPE_UNSPECIFIED = 0;
+ // Atomic format attestation signature. See
+ // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276c3e0f64e77723e7/docs/atomic-signature.md
+ // The payload extracted from `signature` is a JSON blob conforming to the
+ // linked schema.
+ SIMPLE_SIGNING_JSON = 1;
+ }
+
+ // Type (for example schema) of the attestation payload that was signed.
+ // The verifier must ensure that the provided type is one that the verifier
+ // supports, and that the attestation payload is a valid instantiation of that
+ // type (for example by validating a JSON schema).
+ ContentType content_type = 3;
+
+ // This field is used by verifiers to select the public key used to validate
+ // the signature. Note that the policy of the verifier ultimately determines
+ // which public keys verify a signature based on the context of the
+ // verification. There is no guarantee validation will succeed if the
+ // verifier has no key matching this ID, even if it has a key under a
+ // different ID that would verify the signature. Note that this ID should also
+ // be present in the signature content above, but that is not expected to be
+ // used by the verifier.
+ oneof key_id {
+ // The cryptographic fingerprint of the key used to generate the signature,
+ // as output by, e.g. `gpg --list-keys`. This should be the version 4, full
+ // 160-bit fingerprint, expressed as a 40 character hexidecimal string. See
+ // https://tools.ietf.org/html/rfc4880#section-12.2 for details.
+ // Implementations may choose to acknowledge "LONG", "SHORT", or other
+ // abbreviated key IDs, but only the full fingerprint is guaranteed to work.
+ // In gpg, the full fingerprint can be retrieved from the `fpr` field
+ // returned when calling --list-keys with --with-colons. For example:
+ // ```
+ // gpg --with-colons --with-fingerprint --force-v4-certs \
+ // --list-keys attester@example.com
+ // tru::1:1513631572:0:3:1:5
+ // pub:......
+ // fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
+ // ```
+ // Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
+ string pgp_key_id = 2;
+ }
+}
+
+// An attestation wrapper that uses the Grafeas `Signature` message.
+// This attestation must define the `serialized_payload` that the `signatures`
+// verify and any metadata necessary to interpret that plaintext. The
+// signatures should always be over the `serialized_payload` bytestring.
+message GenericSignedAttestation {
+ // Type of the attestation plaintext that was signed.
+ enum ContentType {
+ // `ContentType` is not set.
+ CONTENT_TYPE_UNSPECIFIED = 0;
+ // Atomic format attestation signature. See
+ // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276c3e0f64e77723e7/docs/atomic-signature.md
+ // The payload extracted in `plaintext` is a JSON blob conforming to the
+ // linked schema.
+ SIMPLE_SIGNING_JSON = 1;
+ }
+
+ // Type (for example schema) of the attestation payload that was signed.
+ // The verifier must ensure that the provided type is one that the verifier
+ // supports, and that the attestation payload is a valid instantiation of that
+ // type (for example by validating a JSON schema).
+ ContentType content_type = 1;
+
+ // The serialized payload that is verified by one or more `signatures`.
+ // The encoding and semantic meaning of this payload must match what is set in
+ // `content_type`.
+ bytes serialized_payload = 2;
+
+ // One or more signatures over `serialized_payload`. Verifier implementations
+ // should consider this attestation message verified if at least one
+ // `signature` verifies `serialized_payload`. See `Signature` in common.proto
+ // for more details on signature structure and verification.
+ repeated Signature signatures = 3;
+}
+
+// Note kind that represents a logical attestation "role" or "authority". For
+// example, an organization might have one `Authority` for "QA" and one for
+// "build". This note is intended to act strictly as a grouping mechanism for
+// the attached occurrences (Attestations). This grouping mechanism also
+// provides a security boundary, since IAM ACLs gate the ability for a principle
+// to attach an occurrence to a given note. It also provides a single point of
+// lookup to find all attached attestation occurrences, even if they don't all
+// live in the same project.
+message Authority {
+ // This submessage provides human-readable hints about the purpose of the
+ // authority. Because the name of a note acts as its resource reference, it is
+ // important to disambiguate the canonical name of the Note (which might be a
+ // UUID for security purposes) from "readable" names more suitable for debug
+ // output. Note that these hints should not be used to look up authorities in
+ // security sensitive contexts, such as when looking up attestations to
+ // verify.
+ message Hint {
+ // Required. The human readable name of this attestation authority, for
+ // example "qa".
+ string human_readable_name = 1;
+ }
+
+ // Hint hints at the purpose of the attestation authority.
+ Hint hint = 1;
+}
+
+// Details of an attestation occurrence.
+message Details {
+ // Required. Attestation for the resource.
+ Attestation attestation = 1;
+}
+
+// Occurrence that represents a single "attestation". The authenticity of an
+// attestation can be verified using the attached signature. If the verifier
+// trusts the public key of the signer, then verifying the signature is
+// sufficient to establish trust. In this circumstance, the authority to which
+// this attestation is attached is primarily useful for look-up (how to find
+// this attestation if you already know the authority and artifact to be
+// verified) and intent (which authority was this attestation intended to sign
+// for).
+message Attestation {
+ // Required. The signature, generally over the `resource_url`, that verifies
+ // this attestation. The semantics of the signature veracity are ultimately
+ // determined by the verification engine.
+ oneof signature {
+ // A PGP signed attestation.
+ PgpSignedAttestation pgp_signed_attestation = 1;
+ GenericSignedAttestation generic_signed_attestation = 2;
+ }
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/build/build.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/build/build.proto
new file mode 100644
index 00000000000..0a5a2950ba7
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/build/build.proto
@@ -0,0 +1,96 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.build;
+
+import "google/devtools/containeranalysis/v1beta1/provenance/provenance.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/build;build";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.build";
+option objc_class_prefix = "GRA";
+
+// Note holding the version of the provider's builder and the signature of the
+// provenance message in the build details occurrence.
+message Build {
+ // Required. Immutable. Version of the builder which produced this build.
+ string builder_version = 1;
+
+ // Signature of the build in occurrences pointing to this build note
+ // containing build details.
+ BuildSignature signature = 2;
+}
+
+// Message encapsulating the signature of the verified build.
+message BuildSignature {
+ // Public key of the builder which can be used to verify that the related
+ // findings are valid and unchanged. If `key_type` is empty, this defaults
+ // to PEM encoded public keys.
+ //
+ // This field may be empty if `key_id` references an external key.
+ //
+ // For Cloud Build based signatures, this is a PEM encoded public
+ // key. To verify the Cloud Build signature, place the contents of
+ // this field into a file (public.pem). The signature field is base64-decoded
+ // into its binary representation in signature.bin, and the provenance bytes
+ // from `BuildDetails` are base64-decoded into a binary representation in
+ // signed.bin. OpenSSL can then verify the signature:
+ // `openssl sha256 -verify public.pem -signature signature.bin signed.bin`
+ string public_key = 1;
+
+ // Required. Signature of the related `BuildProvenance`. In JSON, this is
+ // base-64 encoded.
+ bytes signature = 2;
+
+ // An ID for the key used to sign. This could be either an ID for the key
+ // stored in `public_key` (such as the ID or fingerprint for a PGP key, or the
+ // CN for a cert), or a reference to an external key (such as a reference to a
+ // key in Cloud Key Management Service).
+ string key_id = 3;
+
+ // Public key formats.
+ enum KeyType {
+ // `KeyType` is not set.
+ KEY_TYPE_UNSPECIFIED = 0;
+ // `PGP ASCII Armored` public key.
+ PGP_ASCII_ARMORED = 1;
+ // `PKIX PEM` public key.
+ PKIX_PEM = 2;
+ }
+
+ // The type of the key, either stored in `public_key` or referenced in
+ // `key_id`.
+ KeyType key_type = 4;
+}
+
+// Details of a build occurrence.
+message Details {
+ // Required. The actual provenance for the build.
+ grafeas.v1beta1.provenance.BuildProvenance provenance = 1;
+
+ // Serialized JSON representation of the provenance, used in generating the
+ // build signature in the corresponding build note. After verifying the
+ // signature, `provenance_bytes` can be unmarshalled and compared to the
+ // provenance to confirm that it is unchanged. A base64-encoded string
+ // representation of the provenance bytes is used for the signature in order
+ // to interoperate with openssl which expects this format for signature
+ // verification.
+ //
+ // The serialized form is captured both to avoid ambiguity in how the
+ // provenance is marshalled to json as well to prevent incompatibilities with
+ // future changes.
+ string provenance_bytes = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/common/common.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/common/common.proto
new file mode 100644
index 00000000000..bb97a31753f
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/common/common.proto
@@ -0,0 +1,101 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1;
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/common;common";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.common";
+option objc_class_prefix = "GRA";
+
+// Kind represents the kinds of notes supported.
+enum NoteKind {
+ // Unknown.
+ NOTE_KIND_UNSPECIFIED = 0;
+ // The note and occurrence represent a package vulnerability.
+ VULNERABILITY = 1;
+ // The note and occurrence assert build provenance.
+ BUILD = 2;
+ // This represents an image basis relationship.
+ IMAGE = 3;
+ // This represents a package installed via a package manager.
+ PACKAGE = 4;
+ // The note and occurrence track deployment events.
+ DEPLOYMENT = 5;
+ // The note and occurrence track the initial discovery status of a resource.
+ DISCOVERY = 6;
+ // This represents a logical "role" that can attest to artifacts.
+ ATTESTATION = 7;
+}
+
+// Metadata for any related URL information.
+message RelatedUrl {
+ // Specific URL associated with the resource.
+ string url = 1;
+ // Label to describe usage of the URL.
+ string label = 2;
+}
+
+// Verifiers (e.g. Kritis implementations) MUST verify signatures
+// with respect to the trust anchors defined in policy (e.g. a Kritis policy).
+// Typically this means that the verifier has been configured with a map from
+// `public_key_id` to public key material (and any required parameters, e.g.
+// signing algorithm).
+//
+// In particular, verification implementations MUST NOT treat the signature
+// `public_key_id` as anything more than a key lookup hint. The `public_key_id`
+// DOES NOT validate or authenticate a public key; it only provides a mechanism
+// for quickly selecting a public key ALREADY CONFIGURED on the verifier through
+// a trusted channel. Verification implementations MUST reject signatures in any
+// of the following circumstances:
+// * The `public_key_id` is not recognized by the verifier.
+// * The public key that `public_key_id` refers to does not verify the
+// signature with respect to the payload.
+//
+// The `signature` contents SHOULD NOT be "attached" (where the payload is
+// included with the serialized `signature` bytes). Verifiers MUST ignore any
+// "attached" payload and only verify signatures with respect to explicitly
+// provided payload (e.g. a `payload` field on the proto message that holds
+// this Signature, or the canonical serialization of the proto message that
+// holds this signature).
+message Signature {
+ // The content of the signature, an opaque bytestring.
+ // The payload that this signature verifies MUST be unambiguously provided
+ // with the Signature during verification. A wrapper message might provide
+ // the payload explicitly. Alternatively, a message might have a canonical
+ // serialization that can always be unambiguously computed to derive the
+ // payload.
+ bytes signature = 1;
+
+ // The identifier for the public key that verifies this signature.
+ // * The `public_key_id` is required.
+ // * The `public_key_id` MUST be an RFC3986 conformant URI.
+ // * When possible, the `public_key_id` SHOULD be an immutable reference,
+ // such as a cryptographic digest.
+ //
+ // Examples of valid `public_key_id`s:
+ //
+ // OpenPGP V4 public key fingerprint:
+ // * "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA"
+ // See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more
+ // details on this scheme.
+ //
+ // RFC6920 digest-named SubjectPublicKeyInfo (digest of the DER
+ // serialization):
+ // * "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU"
+ // * "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95a1271589a5"
+ string public_key_id = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/containeranalysis.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/containeranalysis.proto
new file mode 100644
index 00000000000..59f3ecd9457
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/containeranalysis.proto
@@ -0,0 +1,219 @@
+// 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.
+//
+
+syntax = "proto3";
+
+package google.devtools.containeranalysis.v1beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1;containeranalysis";
+option java_multiple_files = true;
+option java_package = "com.google.containeranalysis.v1beta1";
+option objc_class_prefix = "GCA";
+
+// Retrieves analysis results of Cloud components such as Docker container
+// images. The Container Analysis API is an implementation of the
+// [Grafeas](grafeas.io) API.
+//
+// Analysis results are stored as a series of occurrences. An `Occurrence`
+// contains information about a specific analysis instance on a resource. An
+// occurrence refers to a `Note`. A note contains details describing the
+// analysis and is generally stored in a separate project, called a `Provider`.
+// Multiple occurrences can refer to the same note.
+//
+// For example, an SSL vulnerability could affect multiple images. In this case,
+// there would be one note for the vulnerability and an occurrence for each
+// image with the vulnerability referring to that note.
+service ContainerAnalysisV1Beta1 {
+ option (google.api.default_host) = "containeranalysis.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Sets the access control policy on the specified note or occurrence.
+ // Requires `containeranalysis.notes.setIamPolicy` or
+ // `containeranalysis.occurrences.setIamPolicy` permission if the resource is
+ // a note or an occurrence, respectively.
+ //
+ // The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
+ // notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
+ // occurrences.
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=projects/*/notes/*}:setIamPolicy"
+ body: "*"
+ additional_bindings {
+ post: "/v1beta1/{resource=projects/*/occurrences/*}:setIamPolicy"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "resource,policy";
+ }
+
+ // Gets the access control policy for a note or an occurrence resource.
+ // Requires `containeranalysis.notes.setIamPolicy` or
+ // `containeranalysis.occurrences.setIamPolicy` permission if the resource is
+ // a note or occurrence, respectively.
+ //
+ // The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
+ // notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
+ // occurrences.
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=projects/*/notes/*}:getIamPolicy"
+ body: "*"
+ additional_bindings {
+ post: "/v1beta1/{resource=projects/*/occurrences/*}:getIamPolicy"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "resource";
+ }
+
+ // Returns the permissions that a caller has on the specified note or
+ // occurrence. Requires list permission on the project (for example,
+ // `containeranalysis.notes.list`).
+ //
+ // The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for
+ // notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for
+ // occurrences.
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=projects/*/notes/*}:testIamPermissions"
+ body: "*"
+ additional_bindings {
+ post: "/v1beta1/{resource=projects/*/occurrences/*}:testIamPermissions"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "resource,permissions";
+ }
+
+ // Gets the specified scan configuration.
+ rpc GetScanConfig(GetScanConfigRequest) returns (ScanConfig) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=projects/*/scanConfigs/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists scan configurations for the specified project.
+ rpc ListScanConfigs(ListScanConfigsRequest) returns (ListScanConfigsResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=projects/*}/scanConfigs"
+ };
+ option (google.api.method_signature) = "parent,filter";
+ }
+
+ // Updates the specified scan configuration.
+ rpc UpdateScanConfig(UpdateScanConfigRequest) returns (ScanConfig) {
+ option (google.api.http) = {
+ put: "/v1beta1/{name=projects/*/scanConfigs/*}"
+ body: "scan_config"
+ };
+ option (google.api.method_signature) = "name,scan_config";
+ }
+}
+
+// A scan configuration specifies whether Cloud components in a project have a
+// particular type of analysis being run. For example, it can configure whether
+// vulnerability scanning is being done on Docker images or not.
+message ScanConfig {
+ option (google.api.resource) = {
+ type: "containeranalysis.googleapis.com/ScanConfig"
+ pattern: "projects/{project}/scanConfigs/{scan_config}"
+ };
+
+ // Output only. The name of the scan configuration in the form of
+ // `projects/[PROJECT_ID]/scanConfigs/[SCAN_CONFIG_ID]`.
+ string name = 1;
+
+ // Output only. A human-readable description of what the scan configuration
+ // does.
+ string description = 2;
+
+ // Whether the scan is enabled.
+ bool enabled = 3;
+
+ // Output only. The time this scan config was created.
+ google.protobuf.Timestamp create_time = 4;
+
+ // Output only. The time this scan config was last updated.
+ google.protobuf.Timestamp update_time = 5;
+}
+
+// Request to get a scan configuration.
+message GetScanConfigRequest {
+ // Required. The name of the scan configuration in the form of
+ // `projects/[PROJECT_ID]/scanConfigs/[SCAN_CONFIG_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "containeranalysis.googleapis.com/ScanConfig"
+ }
+ ];
+}
+
+// Request to list scan configurations.
+message ListScanConfigsRequest {
+ // Required. The name of the project to list scan configurations for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ }
+ ];
+
+ // Required. The filter expression.
+ string filter = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // The number of scan configs to return in the list.
+ int32 page_size = 3;
+
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+}
+
+// Response for listing scan configurations.
+message ListScanConfigsResponse {
+ // The scan configurations requested.
+ repeated ScanConfig scan_configs = 1;
+
+ // The next pagination token in the list response. It should be used as
+ // `page_token` for the following request. An empty value means no more
+ // results.
+ string next_page_token = 2;
+}
+
+// A request to update a scan configuration.
+message UpdateScanConfigRequest {
+ // Required. The name of the scan configuration in the form of
+ // `projects/[PROJECT_ID]/scanConfigs/[SCAN_CONFIG_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "containeranalysis.googleapis.com/ScanConfig"
+ }
+ ];
+
+ // Required. The updated scan configuration.
+ ScanConfig scan_config = 2 [(google.api.field_behavior) = REQUIRED];
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/cvss/cvss.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/cvss/cvss.proto
new file mode 100644
index 00000000000..34844416117
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/cvss/cvss.proto
@@ -0,0 +1,85 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.vulnerability;
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/cvss;cvss";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.vulnerability";
+option objc_class_prefix = "GRA";
+
+// Common Vulnerability Scoring System version 3.
+// For details, see https://www.first.org/cvss/specification-document
+message CVSSv3 {
+ // The base score is a function of the base metric scores.
+ float base_score = 1;
+
+ float exploitability_score = 2;
+
+ float impact_score = 3;
+
+ // Base Metrics
+ // Represents the intrinsic characteristics of a vulnerability that are
+ // constant over time and across user environments.
+ AttackVector attack_vector = 5;
+ AttackComplexity attack_complexity = 6;
+ PrivilegesRequired privileges_required = 7;
+ UserInteraction user_interaction = 8;
+ Scope scope = 9;
+ Impact confidentiality_impact = 10;
+ Impact integrity_impact = 11;
+ Impact availability_impact = 12;
+
+ enum AttackVector {
+ ATTACK_VECTOR_UNSPECIFIED = 0;
+ ATTACK_VECTOR_NETWORK = 1;
+ ATTACK_VECTOR_ADJACENT = 2;
+ ATTACK_VECTOR_LOCAL = 3;
+ ATTACK_VECTOR_PHYSICAL = 4;
+ }
+
+ enum AttackComplexity {
+ ATTACK_COMPLEXITY_UNSPECIFIED = 0;
+ ATTACK_COMPLEXITY_LOW = 1;
+ ATTACK_COMPLEXITY_HIGH = 2;
+ }
+
+ enum PrivilegesRequired {
+ PRIVILEGES_REQUIRED_UNSPECIFIED = 0;
+ PRIVILEGES_REQUIRED_NONE = 1;
+ PRIVILEGES_REQUIRED_LOW = 2;
+ PRIVILEGES_REQUIRED_HIGH = 3;
+ }
+
+ enum UserInteraction {
+ USER_INTERACTION_UNSPECIFIED = 0;
+ USER_INTERACTION_NONE = 1;
+ USER_INTERACTION_REQUIRED = 2;
+ }
+
+ enum Scope {
+ SCOPE_UNSPECIFIED = 0;
+ SCOPE_UNCHANGED = 1;
+ SCOPE_CHANGED = 2;
+ }
+
+ enum Impact {
+ IMPACT_UNSPECIFIED = 0;
+ IMPACT_HIGH = 1;
+ IMPACT_LOW = 2;
+ IMPACT_NONE = 3;
+ }
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/deployment/deployment.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/deployment/deployment.proto
new file mode 100644
index 00000000000..7bc8dc8977e
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/deployment/deployment.proto
@@ -0,0 +1,74 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.deployment;
+
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/deployment;deployment";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.deployment";
+option objc_class_prefix = "GRA";
+
+// An artifact that can be deployed in some runtime.
+message Deployable {
+ // Required. Resource URI for the artifact being deployed.
+ repeated string resource_uri = 1;
+}
+
+// Details of a deployment occurrence.
+message Details {
+ // Required. Deployment history for the resource.
+ Deployment deployment = 1;
+}
+
+// The period during which some deployable was active in a runtime.
+message Deployment {
+ // Identity of the user that triggered this deployment.
+ string user_email = 1;
+
+ // Required. Beginning of the lifetime of this deployment.
+ google.protobuf.Timestamp deploy_time = 2;
+
+ // End of the lifetime of this deployment.
+ google.protobuf.Timestamp undeploy_time = 3;
+
+ // Configuration used to create this deployment.
+ string config = 4;
+
+ // Address of the runtime element hosting this deployment.
+ string address = 5;
+
+ // Output only. Resource URI for the artifact being deployed taken from
+ // the deployable field with the same name.
+ repeated string resource_uri = 6;
+
+ // Types of platforms.
+ enum Platform {
+ // Unknown.
+ PLATFORM_UNSPECIFIED = 0;
+ // Google Container Engine.
+ GKE = 1;
+ // Google App Engine: Flexible Environment.
+ FLEX = 2;
+ // Custom user-defined platform.
+ CUSTOM = 3;
+ }
+ // Platform hosting this deployment.
+ Platform platform = 7;
+
+ // next_id = 8;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/discovery/discovery.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/discovery/discovery.proto
new file mode 100644
index 00000000000..edfa043bcc4
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/discovery/discovery.proto
@@ -0,0 +1,86 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.discovery;
+
+import "google/devtools/containeranalysis/v1beta1/common/common.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/discovery;discovery";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.discovery";
+option objc_class_prefix = "GRA";
+
+// A note that indicates a type of analysis a provider would perform. This note
+// exists in a provider's project. A `Discovery` occurrence is created in a
+// consumer's project at the start of analysis.
+message Discovery {
+ // Required. Immutable. The kind of analysis that is handled by this
+ // discovery.
+ grafeas.v1beta1.NoteKind analysis_kind = 1;
+}
+
+// Details of a discovery occurrence.
+message Details {
+ // Required. Analysis status for the discovered resource.
+ Discovered discovered = 1;
+}
+
+// Provides information about the analysis status of a discovered resource.
+message Discovered {
+ // Whether the resource is continuously analyzed.
+ enum ContinuousAnalysis {
+ // Unknown.
+ CONTINUOUS_ANALYSIS_UNSPECIFIED = 0;
+ // The resource is continuously analyzed.
+ ACTIVE = 1;
+ // The resource is ignored for continuous analysis.
+ INACTIVE = 2;
+ }
+
+ // Whether the resource is continuously analyzed.
+ ContinuousAnalysis continuous_analysis = 1;
+
+ // The last time continuous analysis was done for this resource.
+ google.protobuf.Timestamp last_analysis_time = 2;
+
+ // Analysis status for a resource. Currently for initial analysis only (not
+ // updated in continuous analysis).
+ enum AnalysisStatus {
+ // Unknown.
+ ANALYSIS_STATUS_UNSPECIFIED = 0;
+ // Resource is known but no action has been taken yet.
+ PENDING = 1;
+ // Resource is being analyzed.
+ SCANNING = 2;
+ // Analysis has finished successfully.
+ FINISHED_SUCCESS = 3;
+ // Analysis has finished unsuccessfully, the analysis itself is in a bad
+ // state.
+ FINISHED_FAILED = 4;
+ // The resource is known not to be supported
+ FINISHED_UNSUPPORTED = 5;
+ }
+
+ // The status of discovery for the resource.
+ AnalysisStatus analysis_status = 3;
+
+ // When an error is encountered this will contain a LocalizedMessage under
+ // details to show to the user. The LocalizedMessage is output only and
+ // populated by the API.
+ google.rpc.Status analysis_status_error = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/grafeas/grafeas.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/grafeas/grafeas.proto
new file mode 100644
index 00000000000..8952164eb44
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/grafeas/grafeas.proto
@@ -0,0 +1,506 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/devtools/containeranalysis/v1beta1/attestation/attestation.proto";
+import "google/devtools/containeranalysis/v1beta1/build/build.proto";
+import "google/devtools/containeranalysis/v1beta1/common/common.proto";
+import "google/devtools/containeranalysis/v1beta1/deployment/deployment.proto";
+import "google/devtools/containeranalysis/v1beta1/discovery/discovery.proto";
+import "google/devtools/containeranalysis/v1beta1/image/image.proto";
+import "google/devtools/containeranalysis/v1beta1/package/package.proto";
+import "google/devtools/containeranalysis/v1beta1/provenance/provenance.proto";
+import "google/devtools/containeranalysis/v1beta1/vulnerability/vulnerability.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/grafeas;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1";
+option objc_class_prefix = "GRA";
+
+// [Grafeas](grafeas.io) API.
+//
+// Retrieves analysis results of Cloud components such as Docker container
+// images.
+//
+// Analysis results are stored as a series of occurrences. An `Occurrence`
+// contains information about a specific analysis instance on a resource. An
+// occurrence refers to a `Note`. A note contains details describing the
+// analysis and is generally stored in a separate project, called a `Provider`.
+// Multiple occurrences can refer to the same note.
+//
+// For example, an SSL vulnerability could affect multiple images. In this case,
+// there would be one note for the vulnerability and an occurrence for each
+// image with the vulnerability referring to that note.
+service GrafeasV1Beta1 {
+ option (google.api.default_host) = "containeranalysis.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Gets the specified occurrence.
+ rpc GetOccurrence(GetOccurrenceRequest) returns (Occurrence) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=projects/*/occurrences/*}"
+ };
+ }
+
+ // Lists occurrences for the specified project.
+ rpc ListOccurrences(ListOccurrencesRequest)
+ returns (ListOccurrencesResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=projects/*}/occurrences"
+ };
+ }
+
+ // Deletes the specified occurrence. For example, use this method to delete an
+ // occurrence when the occurrence is no longer applicable for the given
+ // resource.
+ rpc DeleteOccurrence(DeleteOccurrenceRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1beta1/{name=projects/*/occurrences/*}"
+ };
+ }
+
+ // Creates a new occurrence.
+ rpc CreateOccurrence(CreateOccurrenceRequest) returns (Occurrence) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=projects/*}/occurrences"
+ body: "occurrence"
+ };
+ }
+
+ // Creates new occurrences in batch.
+ rpc BatchCreateOccurrences(BatchCreateOccurrencesRequest)
+ returns (BatchCreateOccurrencesResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=projects/*}/occurrences:batchCreate"
+ body: "*"
+ };
+ }
+
+ // Updates the specified occurrence.
+ rpc UpdateOccurrence(UpdateOccurrenceRequest) returns (Occurrence) {
+ option (google.api.http) = {
+ patch: "/v1beta1/{name=projects/*/occurrences/*}"
+ body: "occurrence"
+ };
+ }
+
+ // Gets the note attached to the specified occurrence. Consumer projects can
+ // use this method to get a note that belongs to a provider project.
+ rpc GetOccurrenceNote(GetOccurrenceNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=projects/*/occurrences/*}/notes"
+ };
+ }
+
+ // Gets the specified note.
+ rpc GetNote(GetNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=projects/*/notes/*}"
+ };
+ }
+
+ // Lists notes for the specified project.
+ rpc ListNotes(ListNotesRequest) returns (ListNotesResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=projects/*}/notes"
+ };
+ }
+
+ // Deletes the specified note.
+ rpc DeleteNote(DeleteNoteRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1beta1/{name=projects/*/notes/*}"
+ };
+ }
+
+ // Creates a new note.
+ rpc CreateNote(CreateNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=projects/*}/notes"
+ body: "note"
+ };
+ }
+
+ // Creates new notes in batch.
+ rpc BatchCreateNotes(BatchCreateNotesRequest)
+ returns (BatchCreateNotesResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=projects/*}/notes:batchCreate"
+ body: "*"
+ };
+ }
+
+ // Updates the specified note.
+ rpc UpdateNote(UpdateNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ patch: "/v1beta1/{name=projects/*/notes/*}"
+ body: "note"
+ };
+ }
+
+ // Lists occurrences referencing the specified note. Provider projects can use
+ // this method to get all occurrences across consumer projects referencing the
+ // specified note.
+ rpc ListNoteOccurrences(ListNoteOccurrencesRequest)
+ returns (ListNoteOccurrencesResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=projects/*/notes/*}/occurrences"
+ };
+ }
+
+ // Gets a summary of the number and severity of occurrences.
+ rpc GetVulnerabilityOccurrencesSummary(
+ GetVulnerabilityOccurrencesSummaryRequest)
+ returns (VulnerabilityOccurrencesSummary) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=projects/*}/occurrences:vulnerabilitySummary"
+ };
+ }
+}
+
+// An instance of an analysis type that has been found on a resource.
+message Occurrence {
+ // Output only. The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1;
+
+ // Required. Immutable. The resource for which the occurrence applies.
+ Resource resource = 2;
+
+ // Required. Immutable. The analysis note associated with this occurrence, in
+ // the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This field can be
+ // used as a filter in list requests.
+ string note_name = 3;
+
+ // Output only. This explicitly denotes which of the occurrence details are
+ // specified. This field can be used as a filter in list requests.
+ grafeas.v1beta1.NoteKind kind = 4;
+
+ // A description of actions that can be taken to remedy the note.
+ string remediation = 5;
+
+ // Output only. The time this occurrence was created.
+ google.protobuf.Timestamp create_time = 6;
+
+ // Output only. The time this occurrence was last updated.
+ google.protobuf.Timestamp update_time = 7;
+
+ // Required. Immutable. Describes the details of the note kind found on this
+ // resource.
+ oneof details {
+ // Describes a security vulnerability.
+ grafeas.v1beta1.vulnerability.Details vulnerability = 8;
+ // Describes a verifiable build.
+ grafeas.v1beta1.build.Details build = 9;
+ // Describes how this resource derives from the basis in the associated
+ // note.
+ grafeas.v1beta1.image.Details derived_image = 10;
+ // Describes the installation of a package on the linked resource.
+ grafeas.v1beta1.package.Details installation = 11;
+ // Describes the deployment of an artifact on a runtime.
+ grafeas.v1beta1.deployment.Details deployment = 12;
+ // Describes when a resource was discovered.
+ grafeas.v1beta1.discovery.Details discovered = 13;
+ // Describes an attestation of an artifact.
+ grafeas.v1beta1.attestation.Details attestation = 14;
+ }
+
+ // next_id = 15;
+}
+
+// An entity that can have metadata. For example, a Docker image.
+message Resource {
+ // The name of the resource. For example, the name of a Docker image -
+ // "Debian".
+ string name = 1;
+ // Required. The unique URI of the resource. For example,
+ // `https://gcr.io/project/image@sha256:foo` for a Docker image.
+ string uri = 2;
+ // The hash of the resource content. For example, the Docker digest.
+ grafeas.v1beta1.provenance.Hash content_hash = 3;
+
+ // next_id = 4;
+}
+
+// A type of analysis that can be done for a resource.
+message Note {
+ // Output only. The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1;
+
+ // A one sentence description of this note.
+ string short_description = 2;
+
+ // A detailed description of this note.
+ string long_description = 3;
+
+ // Output only. The type of analysis. This field can be used as a filter in
+ // list requests.
+ grafeas.v1beta1.NoteKind kind = 4;
+
+ // URLs associated with this note.
+ repeated grafeas.v1beta1.RelatedUrl related_url = 5;
+
+ // Time of expiration for this note. Empty if note does not expire.
+ google.protobuf.Timestamp expiration_time = 6;
+
+ // Output only. The time this note was created. This field can be used as a
+ // filter in list requests.
+ google.protobuf.Timestamp create_time = 7;
+
+ // Output only. The time this note was last updated. This field can be used as
+ // a filter in list requests.
+ google.protobuf.Timestamp update_time = 8;
+
+ // Other notes related to this note.
+ repeated string related_note_names = 9;
+
+ // Required. Immutable. The type of analysis this note represents.
+ oneof type {
+ // A note describing a package vulnerability.
+ grafeas.v1beta1.vulnerability.Vulnerability vulnerability = 10;
+ // A note describing build provenance for a verifiable build.
+ grafeas.v1beta1.build.Build build = 11;
+ // A note describing a base image.
+ grafeas.v1beta1.image.Basis base_image = 12;
+ // A note describing a package hosted by various package managers.
+ grafeas.v1beta1.package.Package package = 13;
+ // A note describing something that can be deployed.
+ grafeas.v1beta1.deployment.Deployable deployable = 14;
+ // A note describing the initial analysis of a resource.
+ grafeas.v1beta1.discovery.Discovery discovery = 15;
+ // A note describing an attestation role.
+ grafeas.v1beta1.attestation.Authority attestation_authority = 16;
+ }
+
+ // next_id = 17;
+}
+
+// Request to get an occurrence.
+message GetOccurrenceRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1;
+}
+
+// Request to list occurrences.
+message ListOccurrencesRequest {
+ // The name of the project to list occurrences for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1;
+
+ // The filter expression.
+ string filter = 2;
+
+ // Number of occurrences to return in the list.
+ int32 page_size = 3;
+
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+
+ // next_id = 7;
+}
+
+// Response for listing occurrences.
+message ListOccurrencesResponse {
+ // The occurrences requested.
+ repeated Occurrence occurrences = 1;
+ // The next pagination token in the list response. It should be used as
+ // `page_token` for the following request. An empty value means no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request to delete a occurrence.
+message DeleteOccurrenceRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1;
+}
+
+// Request to create a new occurrence.
+message CreateOccurrenceRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the occurrence is to be created.
+ string parent = 1;
+ // The occurrence to create.
+ Occurrence occurrence = 2;
+}
+
+// Request to update an occurrence.
+message UpdateOccurrenceRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1;
+ // The updated occurrence.
+ Occurrence occurrence = 2;
+ // The fields to update.
+ google.protobuf.FieldMask update_mask = 3;
+}
+
+// Request to get a note.
+message GetNoteRequest {
+ // The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1;
+}
+
+// Request to get the note to which the specified occurrence is attached.
+message GetOccurrenceNoteRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1;
+}
+
+// Request to list notes.
+message ListNotesRequest {
+ // The name of the project to list notes for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1;
+ // The filter expression.
+ string filter = 2;
+ // Number of notes to return in the list.
+ int32 page_size = 3;
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+}
+
+// Response for listing notes.
+message ListNotesResponse {
+ // The notes requested.
+ repeated Note notes = 1;
+ // The next pagination token in the list response. It should be used as
+ // `page_token` for the following request. An empty value means no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request to delete a note.
+message DeleteNoteRequest {
+ // The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1;
+}
+
+// Request to create a new note.
+message CreateNoteRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the note is to be created.
+ string parent = 1;
+ // The ID to use for this note.
+ string note_id = 2;
+ // The note to create.
+ Note note = 3;
+}
+
+// Request to update a note.
+message UpdateNoteRequest {
+ // The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1;
+ // The updated note.
+ Note note = 2;
+ // The fields to update.
+ google.protobuf.FieldMask update_mask = 3;
+}
+
+// Request to list occurrences for a note.
+message ListNoteOccurrencesRequest {
+ // The name of the note to list occurrences for in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1;
+ // The filter expression.
+ string filter = 2;
+ // Number of occurrences to return in the list.
+ int32 page_size = 3;
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+}
+
+// Response for listing occurrences for a note.
+message ListNoteOccurrencesResponse {
+ // The occurrences attached to the specified note.
+ repeated Occurrence occurrences = 1;
+ // Token to provide to skip to a particular spot in the list.
+ string next_page_token = 2;
+}
+
+// Request to create notes in batch.
+message BatchCreateNotesRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the notes are to be created.
+ string parent = 1;
+
+ // The notes to create.
+ map notes = 2;
+}
+
+// Response for creating notes in batch.
+message BatchCreateNotesResponse {
+ // The notes that were created.
+ repeated Note notes = 1;
+}
+
+// Request to create occurrences in batch.
+message BatchCreateOccurrencesRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the occurrences are to be created.
+ string parent = 1;
+ // The occurrences to create.
+ repeated Occurrence occurrences = 2;
+}
+
+// Response for creating occurrences in batch.
+message BatchCreateOccurrencesResponse {
+ // The occurrences that were created.
+ repeated Occurrence occurrences = 1;
+}
+
+// Request to get a vulnerability summary for some set of occurrences.
+message GetVulnerabilityOccurrencesSummaryRequest {
+ // The name of the project to get a vulnerability summary for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1;
+ // The filter expression.
+ string filter = 2;
+}
+
+// A summary of how many vulnerability occurrences there are per resource and
+// severity type.
+message VulnerabilityOccurrencesSummary {
+ // A listing by resource of the number of fixable and total vulnerabilities.
+ repeated FixableTotalByDigest counts = 1;
+
+ // Per resource and severity counts of fixable and total vulnerabilities.
+ message FixableTotalByDigest {
+ // The affected resource.
+ Resource resource = 1;
+ // The severity for this count. SEVERITY_UNSPECIFIED indicates total across
+ // all severities.
+ grafeas.v1beta1.vulnerability.Severity severity = 2;
+ // The number of fixable vulnerabilities associated with this resource.
+ int64 fixable_count = 3;
+ // The total number of vulnerabilities associated with this resource.
+ int64 total_count = 4;
+ }
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/image/image.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/image/image.proto
new file mode 100644
index 00000000000..91ee33e0598
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/image/image.proto
@@ -0,0 +1,145 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.image;
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/image;image";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.image";
+option objc_class_prefix = "GRA";
+
+// Layer holds metadata specific to a layer of a Docker image.
+message Layer {
+ // Instructions from Dockerfile.
+ enum Directive {
+ // Default value for unsupported/missing directive.
+ DIRECTIVE_UNSPECIFIED = 0;
+
+ // https://docs.docker.com/engine/reference/builder/
+ MAINTAINER = 1;
+
+ // https://docs.docker.com/engine/reference/builder/
+ RUN = 2;
+
+ // https://docs.docker.com/engine/reference/builder/
+ CMD = 3;
+
+ // https://docs.docker.com/engine/reference/builder/
+ LABEL = 4;
+
+ // https://docs.docker.com/engine/reference/builder/
+ EXPOSE = 5;
+
+ // https://docs.docker.com/engine/reference/builder/
+ ENV = 6;
+
+ // https://docs.docker.com/engine/reference/builder/
+ ADD = 7;
+
+ // https://docs.docker.com/engine/reference/builder/
+ COPY = 8;
+
+ // https://docs.docker.com/engine/reference/builder/
+ ENTRYPOINT = 9;
+
+ // https://docs.docker.com/engine/reference/builder/
+ VOLUME = 10;
+
+ // https://docs.docker.com/engine/reference/builder/
+ USER = 11;
+
+ // https://docs.docker.com/engine/reference/builder/
+ WORKDIR = 12;
+
+ // https://docs.docker.com/engine/reference/builder/
+ ARG = 13;
+
+ // https://docs.docker.com/engine/reference/builder/
+ ONBUILD = 14;
+
+ // https://docs.docker.com/engine/reference/builder/
+ STOPSIGNAL = 15;
+
+ // https://docs.docker.com/engine/reference/builder/
+ HEALTHCHECK = 16;
+
+ // https://docs.docker.com/engine/reference/builder/
+ SHELL = 17;
+ }
+
+ // Required. The recovered Dockerfile directive used to construct this layer.
+ Directive directive = 1;
+
+ // The recovered arguments to the Dockerfile directive.
+ string arguments = 2;
+}
+
+// A set of properties that uniquely identify a given Docker image.
+message Fingerprint {
+ // Required. The layer ID of the final layer in the Docker image's v1
+ // representation.
+ string v1_name = 1;
+
+ // Required. The ordered list of v2 blobs that represent a given image.
+ repeated string v2_blob = 2;
+
+ // Output only. The name of the image's v2 blobs computed via:
+ // [bottom] := v2_blob[bottom]
+ // [N] := sha256(v2_blob[N] + " " + v2_name[N+1])
+ // Only the name of the final blob is kept.
+ string v2_name = 3;
+}
+
+// Basis describes the base image portion (Note) of the DockerImage
+// relationship. Linked occurrences are derived from this or an
+// equivalent image via:
+// FROM
+// Or an equivalent reference, e.g. a tag of the resource_url.
+message Basis {
+ // Required. Immutable. The resource_url for the resource representing the
+ // basis of associated occurrence images.
+ string resource_url = 1;
+
+ // Required. Immutable. The fingerprint of the base image.
+ Fingerprint fingerprint = 2;
+}
+
+// Details of an image occurrence.
+message Details {
+ // Required. Immutable. The child image derived from the base image.
+ Derived derived_image = 1;
+}
+
+// Derived describes the derived image portion (Occurrence) of the DockerImage
+// relationship. This image would be produced from a Dockerfile with FROM
+// .
+message Derived {
+ // Required. The fingerprint of the derived image.
+ Fingerprint fingerprint = 1;
+
+ // Output only. The number of layers by which this image differs from the
+ // associated image basis.
+ int32 distance = 2;
+
+ // This contains layer-specific metadata, if populated it has length
+ // "distance" and is ordered with [distance] being the layer immediately
+ // following the base image and [1] being the final layer.
+ repeated Layer layer_info = 3;
+
+ // Output only. This contains the base image URL for the derived image
+ // occurrence.
+ string base_resource_url = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/package/package.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/package/package.proto
new file mode 100644
index 00000000000..59cac2053a0
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/package/package.proto
@@ -0,0 +1,127 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.package;
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/package";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.pkg";
+option objc_class_prefix = "GRA";
+
+// Instruction set architectures supported by various package managers.
+enum Architecture {
+ // Unknown architecture.
+ ARCHITECTURE_UNSPECIFIED = 0;
+ // X86 architecture.
+ X86 = 1;
+ // X64 architecture.
+ X64 = 2;
+}
+
+// This represents a particular channel of distribution for a given package.
+// E.g., Debian's jessie-backports dpkg mirror.
+message Distribution {
+ // Required. The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
+ // denoting the package manager version distributing a package.
+ string cpe_uri = 1;
+
+ // The CPU architecture for which packages in this distribution channel were
+ // built.
+ Architecture architecture = 2;
+
+ // The latest available version of this package in this distribution channel.
+ Version latest_version = 3;
+
+ // A freeform string denoting the maintainer of this package.
+ string maintainer = 4;
+
+ // The distribution channel-specific homepage for this package.
+ string url = 5;
+
+ // The distribution channel-specific description of this package.
+ string description = 6;
+}
+
+// An occurrence of a particular package installation found within a system's
+// filesystem. E.g., glibc was found in `/var/lib/dpkg/status`.
+message Location {
+ // Required. The CPE URI in [CPE format](https://cpe.mitre.org/specification/)
+ // denoting the package manager version distributing a package.
+ string cpe_uri = 1;
+
+ // The version installed at this location.
+ Version version = 2;
+
+ // The path from which we gathered that this package/version is installed.
+ string path = 3;
+}
+
+// This represents a particular package that is distributed over various
+// channels. E.g., glibc (aka libc6) is distributed by many, at various
+// versions.
+message Package {
+ // Required. Immutable. The name of the package.
+ string name = 1;
+
+ // The various channels by which a package is distributed.
+ repeated Distribution distribution = 10;
+}
+
+// Details of a package occurrence.
+message Details {
+ // Required. Where the package was installed.
+ Installation installation = 1;
+}
+
+// This represents how a particular software package may be installed on a
+// system.
+message Installation {
+ // Output only. The name of the installed package.
+ string name = 1;
+
+ // Required. All of the places within the filesystem versions of this package
+ // have been found.
+ repeated Location location = 2;
+}
+
+// Version contains structured information about the version of a package.
+message Version {
+ // Used to correct mistakes in the version numbering scheme.
+ int32 epoch = 1;
+
+ // Required only when version kind is NORMAL. The main part of the version
+ // name.
+ string name = 2;
+
+ // The iteration of the package build from the above version.
+ string revision = 3;
+
+ // Whether this is an ordinary package version or a sentinel MIN/MAX version.
+ enum VersionKind {
+ // Unknown.
+ VERSION_KIND_UNSPECIFIED = 0;
+ // A standard package version.
+ NORMAL = 1;
+ // A special version representing negative infinity.
+ MINIMUM = 2;
+ // A special version representing positive infinity.
+ MAXIMUM = 3;
+ };
+
+ // Required. Distinguishes between sentinel MIN/MAX versions and normal
+ // versions.
+ VersionKind kind = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/provenance/provenance.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/provenance/provenance.proto
new file mode 100644
index 00000000000..761877cdb63
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/provenance/provenance.proto
@@ -0,0 +1,164 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.provenance;
+
+import "google/devtools/containeranalysis/v1beta1/source/source.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/provenance;provenance";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.provenance";
+option objc_class_prefix = "GRA";
+
+// Provenance of a build. Contains all information needed to verify the full
+// details about the build from source to completion.
+message BuildProvenance {
+ // Required. Unique identifier of the build.
+ string id = 1;
+
+ // ID of the project.
+ string project_id = 2;
+
+ // Commands requested by the build.
+ repeated Command commands = 3;
+
+ // Output of the build.
+ repeated Artifact built_artifacts = 4;
+
+ // Time at which the build was created.
+ google.protobuf.Timestamp create_time = 5;
+
+ // Time at which execution of the build was started.
+ google.protobuf.Timestamp start_time = 6;
+
+ // Time at which execution of the build was finished.
+ google.protobuf.Timestamp end_time = 7;
+
+ // E-mail address of the user who initiated this build. Note that this was the
+ // user's e-mail address at the time the build was initiated; this address may
+ // not represent the same end-user for all time.
+ string creator = 8;
+
+ // URI where any logs for this provenance were written.
+ string logs_uri = 9;
+
+ // Details of the Source input to the build.
+ Source source_provenance = 10;
+
+ // Trigger identifier if the build was triggered automatically; empty if not.
+ string trigger_id = 11;
+
+ // Special options applied to this build. This is a catch-all field where
+ // build providers can enter any desired additional details.
+ map build_options = 12;
+
+ // Version string of the builder at the time this build was executed.
+ string builder_version = 13;
+
+ // next_id = 14
+}
+
+// Source describes the location of the source used for the build.
+message Source {
+ // If provided, the input binary artifacts for the build came from this
+ // location.
+ string artifact_storage_source_uri = 1;
+
+ // Hash(es) of the build source, which can be used to verify that the original
+ // source integrity was maintained in the build.
+ //
+ // The keys to this map are file paths used as build source and the values
+ // contain the hash values for those files.
+ //
+ // If the build source came in a single package such as a gzipped tarfile
+ // (.tar.gz), the FileHash will be for the single path to that file.
+ map file_hashes = 2;
+
+ // If provided, the source code used for the build came from this location.
+ grafeas.v1beta1.source.SourceContext context = 3;
+
+ // If provided, some of the source code used for the build may be found in
+ // these locations, in the case where the source repository had multiple
+ // remotes or submodules. This list will not include the context specified in
+ // the context field.
+ repeated grafeas.v1beta1.source.SourceContext additional_contexts = 4;
+}
+
+// Container message for hashes of byte content of files, used in source
+// messages to verify integrity of source input to the build.
+message FileHashes {
+ // Required. Collection of file hashes.
+ repeated Hash file_hash = 1;
+}
+
+// Container message for hash values.
+message Hash {
+ // Specifies the hash algorithm.
+ enum HashType {
+ // Unknown.
+ HASH_TYPE_UNSPECIFIED = 0;
+ // A SHA-256 hash.
+ SHA256 = 1;
+ }
+
+ // Required. The type of hash that was performed.
+ HashType type = 1;
+ // Required. The hash value.
+ bytes value = 2;
+}
+
+// Command describes a step performed as part of the build pipeline.
+message Command {
+ // Required. Name of the command, as presented on the command line, or if the
+ // command is packaged as a Docker container, as presented to `docker pull`.
+ string name = 1;
+
+ // Environment variables set before running this command.
+ repeated string env = 2;
+
+ // Command-line arguments used when executing this command.
+ repeated string args = 3;
+
+ // Working directory (relative to project source root) used when running this
+ // command.
+ string dir = 4;
+
+ // Optional unique identifier for this command, used in wait_for to reference
+ // this command as a dependency.
+ string id = 5;
+
+ // The ID(s) of the command(s) that this command depends on.
+ repeated string wait_for = 6;
+}
+
+// Artifact describes a build product.
+message Artifact {
+ // Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
+ // container.
+ string checksum = 1;
+
+ // Artifact ID, if any; for container images, this will be a URL by digest
+ // like `gcr.io/projectID/imagename@sha256:123456`.
+ string id = 2;
+
+ // Related artifact names. This may be the path to a binary or jar file, or in
+ // the case of a container build, the name used to push the container image to
+ // Google Container Registry, as presented to `docker push`. Note that a
+ // single Artifact ID can have multiple names, for example if two tags are
+ // applied to one image.
+ repeated string names = 3;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/source/source.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/source/source.proto
new file mode 100644
index 00000000000..01be060c5fc
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/source/source.proto
@@ -0,0 +1,134 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.source;
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/source;source";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.source";
+option objc_class_prefix = "GRA";
+
+// A SourceContext is a reference to a tree of files. A SourceContext together
+// with a path point to a unique revision of a single file or directory.
+message SourceContext {
+ // A SourceContext can refer any one of the following types of repositories.
+ oneof context {
+ // A SourceContext referring to a revision in a Google Cloud Source Repo.
+ CloudRepoSourceContext cloud_repo = 1;
+
+ // A SourceContext referring to a Gerrit project.
+ GerritSourceContext gerrit = 2;
+
+ // A SourceContext referring to any third party Git repo (e.g., GitHub).
+ GitSourceContext git = 3;
+ }
+
+ // Labels with user defined metadata.
+ map labels = 4;
+}
+
+// An alias to a repo revision.
+message AliasContext {
+ // The type of an alias.
+ enum Kind {
+ // Unknown.
+ KIND_UNSPECIFIED = 0;
+ // Git tag.
+ FIXED = 1;
+ // Git branch.
+ MOVABLE = 2;
+ // Used to specify non-standard aliases. For example, if a Git repo has a
+ // ref named "refs/foo/bar".
+ OTHER = 4;
+ }
+
+ // The alias kind.
+ Kind kind = 1;
+
+ // The alias name.
+ string name = 2;
+}
+
+// A CloudRepoSourceContext denotes a particular revision in a Google Cloud
+// Source Repo.
+message CloudRepoSourceContext {
+ // The ID of the repo.
+ RepoId repo_id = 1;
+
+ // A revision in a Cloud Repo can be identified by either its revision ID or
+ // its alias.
+ oneof revision {
+ // A revision ID.
+ string revision_id = 2;
+
+ // An alias, which may be a branch or tag.
+ AliasContext alias_context = 3;
+ }
+}
+
+// A SourceContext referring to a Gerrit project.
+message GerritSourceContext {
+ // The URI of a running Gerrit instance.
+ string host_uri = 1;
+
+ // The full project name within the host. Projects may be nested, so
+ // "project/subproject" is a valid project name. The "repo name" is the
+ // hostURI/project.
+ string gerrit_project = 2;
+
+ // A revision in a Gerrit project can be identified by either its revision ID
+ // or its alias.
+ oneof revision {
+ // A revision (commit) ID.
+ string revision_id = 3;
+
+ // An alias, which may be a branch or tag.
+ AliasContext alias_context = 4;
+ }
+}
+
+// A GitSourceContext denotes a particular revision in a third party Git
+// repository (e.g., GitHub).
+message GitSourceContext {
+ // Git repository URL.
+ string url = 1;
+
+ // Git commit hash.
+ string revision_id = 2;
+}
+
+// A unique identifier for a Cloud Repo.
+message RepoId {
+ // A cloud repo can be identified by either its project ID and repository name
+ // combination, or its globally unique identifier.
+ oneof id {
+ // A combination of a project ID and a repo name.
+ ProjectRepoId project_repo_id = 1;
+
+ // A server-assigned, globally unique identifier.
+ string uid = 2;
+ }
+}
+
+// Selects a repo using a Google Cloud Platform project ID (e.g.,
+// winged-cargo-31) and a repo name within that project.
+message ProjectRepoId {
+ // The ID of the project.
+ string project_id = 1;
+
+ // The name of the repo. Leave empty for the default repo.
+ string repo_name = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/vulnerability/vulnerability.proto b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/vulnerability/vulnerability.proto
new file mode 100644
index 00000000000..d83c7e4c560
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/google/devtools/containeranalysis/v1beta1/vulnerability/vulnerability.proto
@@ -0,0 +1,203 @@
+// Copyright 2018 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1beta1.vulnerability;
+
+import "google/protobuf/timestamp.proto";
+import "google/devtools/containeranalysis/v1beta1/common/common.proto";
+import "google/devtools/containeranalysis/v1beta1/cvss/cvss.proto";
+import "google/devtools/containeranalysis/v1beta1/package/package.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/vulnerability;vulnerability";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1beta1.vulnerability";
+option objc_class_prefix = "GRA";
+
+// Note provider-assigned severity/impact ranking.
+enum Severity {
+ // Unknown.
+ SEVERITY_UNSPECIFIED = 0;
+ // Minimal severity.
+ MINIMAL = 1;
+ // Low severity.
+ LOW = 2;
+ // Medium severity.
+ MEDIUM = 3;
+ // High severity.
+ HIGH = 4;
+ // Critical severity.
+ CRITICAL = 5;
+}
+
+// Vulnerability provides metadata about a security vulnerability in a Note.
+message Vulnerability {
+ // The CVSS score for this vulnerability.
+ float cvss_score = 1;
+
+ // Note provider assigned impact of the vulnerability.
+ Severity severity = 2;
+
+ // All information about the package to specifically identify this
+ // vulnerability. One entry per (version range and cpe_uri) the package
+ // vulnerability has manifested in.
+ repeated Detail details = 3;
+
+ // Identifies all appearances of this vulnerability in the package for a
+ // specific distro/location. For example: glibc in
+ // cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2
+ message Detail {
+ // Required. The CPE URI in
+ // [cpe format](https://cpe.mitre.org/specification/) in which the
+ // vulnerability manifests. Examples include distro or storage location for
+ // vulnerable jar.
+ string cpe_uri = 1;
+
+ // Required. The name of the package where the vulnerability was found.
+ string package = 2;
+
+ // The min version of the package in which the vulnerability exists.
+ grafeas.v1beta1.package.Version min_affected_version = 3;
+
+ // The max version of the package in which the vulnerability exists.
+ grafeas.v1beta1.package.Version max_affected_version = 4;
+
+ // The severity (eg: distro assigned severity) for this vulnerability.
+ string severity_name = 5;
+
+ // A vendor-specific description of this note.
+ string description = 6;
+
+ // The fix for this specific package version.
+ VulnerabilityLocation fixed_location = 7;
+
+ // The type of package; whether native or non native(ruby gems, node.js
+ // packages etc).
+ string package_type = 8;
+
+ // Whether this detail is obsolete. Occurrences are expected not to point to
+ // obsolete details.
+ bool is_obsolete = 9;
+
+ // The time this information was last changed at the source. This is an
+ // upstream timestamp from the underlying information source - e.g. Ubuntu
+ // security tracker.
+ google.protobuf.Timestamp source_update_time = 10;
+ }
+
+ // The full description of the CVSSv3.
+ CVSSv3 cvss_v3 = 4;
+
+ // Windows details get their own format because the information format and
+ // model don't match a normal detail. Specifically Windows updates are done as
+ // patches, thus Windows vulnerabilities really are a missing package, rather
+ // than a package being at an incorrect version.
+ repeated WindowsDetail windows_details = 5;
+
+ message WindowsDetail {
+ // Required. The CPE URI in
+ // [cpe format](https://cpe.mitre.org/specification/) in which the
+ // vulnerability manifests. Examples include distro or storage location for
+ // vulnerable jar.
+ string cpe_uri = 1;
+
+ // Required. The name of the vulnerability.
+ string name = 2;
+
+ // The description of the vulnerability.
+ string description = 3;
+
+ // Required. The names of the KBs which have hotfixes to mitigate this
+ // vulnerability. Note that there may be multiple hotfixes (and thus
+ // multiple KBs) that mitigate a given vulnerability. Currently any listed
+ // kb's presence is considered a fix.
+ repeated KnowledgeBase fixing_kbs = 4;
+
+ message KnowledgeBase {
+ // The KB name (generally of the form KB[0-9]+ i.e. KB123456).
+ string name = 1;
+ // A link to the KB in the Windows update catalog -
+ // https://www.catalog.update.microsoft.com/
+ string url = 2;
+ }
+ }
+
+ // The time this information was last changed at the source. This is an
+ // upstream timestamp from the underlying information source - e.g. Ubuntu
+ // security tracker.
+ google.protobuf.Timestamp source_update_time = 6;
+
+ // Next free ID is 7.
+}
+
+// Details of a vulnerability Occurrence.
+message Details {
+ // The type of package; whether native or non native(ruby gems, node.js
+ // packages etc)
+ string type = 1;
+
+ // Output only. The note provider assigned Severity of the vulnerability.
+ Severity severity = 2;
+
+ // Output only. The CVSS score of this vulnerability. CVSS score is on a
+ // scale of 0-10 where 0 indicates low severity and 10 indicates high
+ // severity.
+ float cvss_score = 3;
+
+ // Required. The set of affected locations and their fixes (if available)
+ // within the associated resource.
+ repeated PackageIssue package_issue = 4;
+
+ // Output only. A one sentence description of this vulnerability.
+ string short_description = 5;
+
+ // Output only. A detailed description of this vulnerability.
+ string long_description = 6;
+
+ // Output only. URLs related to this vulnerability.
+ repeated grafeas.v1beta1.RelatedUrl related_urls = 7;
+
+ // The distro assigned severity for this vulnerability when it is
+ // available, and note provider assigned severity when distro has not yet
+ // assigned a severity for this vulnerability.
+ Severity effective_severity = 8;
+}
+
+// This message wraps a location affected by a vulnerability and its
+// associated fix (if one is available).
+message PackageIssue {
+ // Required. The location of the vulnerability.
+ VulnerabilityLocation affected_location = 1;
+
+ // The location of the available fix for vulnerability.
+ VulnerabilityLocation fixed_location = 2;
+
+ // Deprecated, use Details.effective_severity instead
+ // The severity (e.g., distro assigned severity) for this vulnerability.
+ string severity_name = 3;
+}
+
+// The location of the vulnerability.
+message VulnerabilityLocation {
+ // Required. The CPE URI in [cpe format](https://cpe.mitre.org/specification/)
+ // format. Examples include distro or storage location for vulnerable jar.
+ string cpe_uri = 1;
+
+ // Required. The package being described.
+ string package = 2;
+
+ // Required. The version of the package being described.
+ grafeas.v1beta1.package.Version version = 3;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/attestation.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/attestation.proto
new file mode 100644
index 00000000000..f2854fe686b
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/attestation.proto
@@ -0,0 +1,90 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "grafeas/v1/common.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// An attestation wrapper with a PGP-compatible signature. This message only
+// supports `ATTACHED` signatures, where the payload that is signed is included
+// alongside the signature itself in the same file.
+
+// Note kind that represents a logical attestation "role" or "authority". For
+// example, an organization might have one `Authority` for "QA" and one for
+// "build". This note is intended to act strictly as a grouping mechanism for
+// the attached occurrences (Attestations). This grouping mechanism also
+// provides a security boundary, since IAM ACLs gate the ability for a principle
+// to attach an occurrence to a given note. It also provides a single point of
+// lookup to find all attached attestation occurrences, even if they don't all
+// live in the same project.
+message AttestationNote {
+ // This submessage provides human-readable hints about the purpose of the
+ // authority. Because the name of a note acts as its resource reference, it is
+ // important to disambiguate the canonical name of the Note (which might be a
+ // UUID for security purposes) from "readable" names more suitable for debug
+ // output. Note that these hints should not be used to look up authorities in
+ // security sensitive contexts, such as when looking up attestations to
+ // verify.
+ message Hint {
+ // Required. The human readable name of this attestation authority, for
+ // example "qa".
+ string human_readable_name = 1;
+ }
+
+ // Hint hints at the purpose of the attestation authority.
+ Hint hint = 1;
+}
+
+message Jwt {
+ // The compact encoding of a JWS, which is always three base64 encoded strings
+ // joined by periods. For details, see:
+ // https://tools.ietf.org/html/rfc7515.html#section-3.1
+ string compact_jwt = 1;
+}
+
+// Occurrence that represents a single "attestation". The authenticity of an
+// attestation can be verified using the attached signature. If the verifier
+// trusts the public key of the signer, then verifying the signature is
+// sufficient to establish trust. In this circumstance, the authority to which
+// this attestation is attached is primarily useful for lookup (how to find
+// this attestation if you already know the authority and artifact to be
+// verified) and intent (for which authority this attestation was intended to
+// sign.
+message AttestationOccurrence {
+ // Required. The serialized payload that is verified by one or more
+ // `signatures`.
+ bytes serialized_payload = 1;
+ // One or more signatures over `serialized_payload`. Verifier implementations
+ // should consider this attestation message verified if at least one
+ // `signature` verifies `serialized_payload`. See `Signature` in common.proto
+ // for more details on signature structure and verification.
+ repeated Signature signatures = 2;
+ // One or more JWTs encoding a self-contained attestation.
+ // Each JWT encodes the payload that it verifies within the JWT itself.
+ // Verifier implementation SHOULD ignore the `serialized_payload` field
+ // when verifying these JWTs.
+ // If only JWTs are present on this AttestationOccurrence, then the
+ // `serialized_payload` SHOULD be left empty.
+ // Each JWT SHOULD encode a claim specific to the `resource_uri` of this
+ // Occurrence, but this is not validated by Grafeas metadata API
+ // implementations. The JWT itself is opaque to Grafeas.
+ repeated Jwt jwts = 3;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/build.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/build.proto
new file mode 100644
index 00000000000..172637fd459
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/build.proto
@@ -0,0 +1,62 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "grafeas/v1/intoto_provenance.proto";
+import "grafeas/v1/intoto_statement.proto";
+import "grafeas/v1/provenance.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// Note holding the version of the provider's builder and the signature of the
+// provenance message in the build details occurrence.
+message BuildNote {
+ // Required. Immutable. Version of the builder which produced this build.
+ string builder_version = 1;
+}
+
+// Details of a build occurrence.
+message BuildOccurrence {
+ // The actual provenance for the build.
+ grafeas.v1.BuildProvenance provenance = 1;
+
+ // Serialized JSON representation of the provenance, used in generating the
+ // build signature in the corresponding build note. After verifying the
+ // signature, `provenance_bytes` can be unmarshalled and compared to the
+ // provenance to confirm that it is unchanged. A base64-encoded string
+ // representation of the provenance bytes is used for the signature in order
+ // to interoperate with openssl which expects this format for signature
+ // verification.
+ //
+ // The serialized form is captured both to avoid ambiguity in how the
+ // provenance is marshalled to json as well to prevent incompatibilities with
+ // future changes.
+ string provenance_bytes = 2;
+
+ // Deprecated. See InTotoStatement for the replacement.
+ // In-toto Provenance representation as defined in spec.
+ InTotoProvenance intoto_provenance = 3;
+
+ // In-toto Statement representation as defined in spec.
+ // The intoto_statement can contain any type of provenance. The serialized
+ // payload of the statement can be stored and signed in the Occurrence's
+ // envelope.
+ InTotoStatement intoto_statement = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/common.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/common.proto
new file mode 100644
index 00000000000..80bd7869968
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/common.proto
@@ -0,0 +1,150 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// Kind represents the kinds of notes supported.
+enum NoteKind {
+ // Default value. This value is unused.
+ NOTE_KIND_UNSPECIFIED = 0;
+ // The note and occurrence represent a package vulnerability.
+ VULNERABILITY = 1;
+ // The note and occurrence assert build provenance.
+ BUILD = 2;
+ // This represents an image basis relationship.
+ IMAGE = 3;
+ // This represents a package installed via a package manager.
+ PACKAGE = 4;
+ // The note and occurrence track deployment events.
+ DEPLOYMENT = 5;
+ // The note and occurrence track the initial discovery status of a resource.
+ DISCOVERY = 6;
+ // This represents a logical "role" that can attest to artifacts.
+ ATTESTATION = 7;
+ // This represents an available package upgrade.
+ UPGRADE = 8;
+ // This represents a Compliance Note
+ COMPLIANCE = 9;
+ // This represents a DSSE attestation Note
+ DSSE_ATTESTATION = 10;
+}
+
+// Metadata for any related URL information.
+message RelatedUrl {
+ // Specific URL associated with the resource.
+ string url = 1;
+ // Label to describe usage of the URL.
+ string label = 2;
+}
+
+// Verifiers (e.g. Kritis implementations) MUST verify signatures
+// with respect to the trust anchors defined in policy (e.g. a Kritis policy).
+// Typically this means that the verifier has been configured with a map from
+// `public_key_id` to public key material (and any required parameters, e.g.
+// signing algorithm).
+//
+// In particular, verification implementations MUST NOT treat the signature
+// `public_key_id` as anything more than a key lookup hint. The `public_key_id`
+// DOES NOT validate or authenticate a public key; it only provides a mechanism
+// for quickly selecting a public key ALREADY CONFIGURED on the verifier through
+// a trusted channel. Verification implementations MUST reject signatures in any
+// of the following circumstances:
+// * The `public_key_id` is not recognized by the verifier.
+// * The public key that `public_key_id` refers to does not verify the
+// signature with respect to the payload.
+//
+// The `signature` contents SHOULD NOT be "attached" (where the payload is
+// included with the serialized `signature` bytes). Verifiers MUST ignore any
+// "attached" payload and only verify signatures with respect to explicitly
+// provided payload (e.g. a `payload` field on the proto message that holds
+// this Signature, or the canonical serialization of the proto message that
+// holds this signature).
+message Signature {
+ // The content of the signature, an opaque bytestring.
+ // The payload that this signature verifies MUST be unambiguously provided
+ // with the Signature during verification. A wrapper message might provide
+ // the payload explicitly. Alternatively, a message might have a canonical
+ // serialization that can always be unambiguously computed to derive the
+ // payload.
+ bytes signature = 1;
+
+ // The identifier for the public key that verifies this signature.
+ // * The `public_key_id` is required.
+ // * The `public_key_id` SHOULD be an RFC3986 conformant URI.
+ // * When possible, the `public_key_id` SHOULD be an immutable reference,
+ // such as a cryptographic digest.
+ //
+ // Examples of valid `public_key_id`s:
+ //
+ // OpenPGP V4 public key fingerprint:
+ // * "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA"
+ // See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more
+ // details on this scheme.
+ //
+ // RFC6920 digest-named SubjectPublicKeyInfo (digest of the DER
+ // serialization):
+ // * "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU"
+ // * "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95a1271589a5"
+ string public_key_id = 2;
+}
+
+// MUST match
+// https://github.com/secure-systems-lab/dsse/blob/master/envelope.proto. An
+// authenticated message of arbitrary type.
+message Envelope {
+ bytes payload = 1;
+ string payload_type = 2;
+ repeated EnvelopeSignature signatures = 3;
+}
+
+message EnvelopeSignature {
+ bytes sig = 1;
+ string keyid = 2;
+}
+
+// Indicates the location at which a package was found.
+message FileLocation {
+ // For jars that are contained inside .war files, this filepath
+ // can indicate the path to war file combined with the path to jar file.
+ string file_path = 1;
+}
+
+// License information.
+message License {
+ // Often a single license can be used to represent the licensing terms.
+ // Sometimes it is necessary to include a choice of one or more licenses
+ // or some combination of license identifiers.
+ // Examples: "LGPL-2.1-only OR MIT", "LGPL-2.1-only AND MIT",
+ // "GPL-2.0-or-later WITH Bison-exception-2.2".
+ string expression = 1;
+
+ // Comments
+ string comments = 2;
+}
+
+// Digest information.
+message Digest {
+ // `SHA1`, `SHA512` etc.
+ string algo = 1;
+
+ // Value of the digest.
+ bytes digest_bytes = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/compliance.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/compliance.proto
new file mode 100644
index 00000000000..688fa82596b
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/compliance.proto
@@ -0,0 +1,82 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "grafeas/v1/severity.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+message ComplianceNote {
+ // The title that identifies this compliance check.
+ string title = 1;
+ // A description about this compliance check.
+ string description = 2;
+ // The OS and config versions the benchmark applies to.
+ repeated grafeas.v1.ComplianceVersion version = 3;
+ // A rationale for the existence of this compliance check.
+ string rationale = 4;
+ // A description of remediation steps if the compliance check fails.
+ string remediation = 5;
+ // A compliance check that is a CIS benchmark.
+ message CisBenchmark {
+ int32 profile_level = 1;
+ grafeas.v1.Severity severity = 2;
+ }
+ oneof compliance_type {
+ CisBenchmark cis_benchmark = 6;
+ }
+ // Serialized scan instructions with a predefined format.
+ bytes scan_instructions = 7;
+}
+
+// Describes the CIS benchmark version that is applicable to a given OS and
+// os version.
+message ComplianceVersion {
+ // The CPE URI (https://cpe.mitre.org/specification/) this benchmark is
+ // applicable to.
+ string cpe_uri = 1;
+ // The name of the document that defines this benchmark, e.g. "CIS
+ // Container-Optimized OS".
+ string benchmark_document = 3;
+ // The version of the benchmark. This is set to the version of the OS-specific
+ // CIS document the benchmark is defined in.
+ string version = 2;
+}
+
+// An indication that the compliance checks in the associated ComplianceNote
+// were not satisfied for particular resources or a specified reason.
+message ComplianceOccurrence {
+ repeated NonCompliantFile non_compliant_files = 2;
+ string non_compliance_reason = 3;
+}
+
+// Details about files that caused a compliance check to fail.
+message NonCompliantFile {
+ // display_command is a single command that can be used to display a list of
+ // non compliant files. When there is no such command, we can also iterate a
+ // list of non compliant file using 'path'.
+
+ // Empty if `display_command` is set.
+ string path = 1;
+ // Command to display the non-compliant files.
+ string display_command = 2;
+ // Explains why a file is non compliant for a CIS check.
+ string reason = 3;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/cvss.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/cvss.proto
new file mode 100644
index 00000000000..181ec052fe4
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/cvss.proto
@@ -0,0 +1,166 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+option java_outer_classname = "CVSSProto";
+
+// Common Vulnerability Scoring System version 3.
+// For details, see https://www.first.org/cvss/specification-document
+message CVSSv3 {
+ // The base score is a function of the base metric scores.
+ float base_score = 1;
+
+ float exploitability_score = 2;
+
+ float impact_score = 3;
+
+ // Base Metrics
+ // Represents the intrinsic characteristics of a vulnerability that are
+ // constant over time and across user environments.
+ AttackVector attack_vector = 5;
+ AttackComplexity attack_complexity = 6;
+ PrivilegesRequired privileges_required = 7;
+ UserInteraction user_interaction = 8;
+ Scope scope = 9;
+ Impact confidentiality_impact = 10;
+ Impact integrity_impact = 11;
+ Impact availability_impact = 12;
+
+ enum AttackVector {
+ ATTACK_VECTOR_UNSPECIFIED = 0;
+ ATTACK_VECTOR_NETWORK = 1;
+ ATTACK_VECTOR_ADJACENT = 2;
+ ATTACK_VECTOR_LOCAL = 3;
+ ATTACK_VECTOR_PHYSICAL = 4;
+ }
+
+ enum AttackComplexity {
+ ATTACK_COMPLEXITY_UNSPECIFIED = 0;
+ ATTACK_COMPLEXITY_LOW = 1;
+ ATTACK_COMPLEXITY_HIGH = 2;
+ }
+
+ enum PrivilegesRequired {
+ PRIVILEGES_REQUIRED_UNSPECIFIED = 0;
+ PRIVILEGES_REQUIRED_NONE = 1;
+ PRIVILEGES_REQUIRED_LOW = 2;
+ PRIVILEGES_REQUIRED_HIGH = 3;
+ }
+
+ enum UserInteraction {
+ USER_INTERACTION_UNSPECIFIED = 0;
+ USER_INTERACTION_NONE = 1;
+ USER_INTERACTION_REQUIRED = 2;
+ }
+
+ enum Scope {
+ SCOPE_UNSPECIFIED = 0;
+ SCOPE_UNCHANGED = 1;
+ SCOPE_CHANGED = 2;
+ }
+
+ enum Impact {
+ IMPACT_UNSPECIFIED = 0;
+ IMPACT_HIGH = 1;
+ IMPACT_LOW = 2;
+ IMPACT_NONE = 3;
+ }
+}
+
+// Common Vulnerability Scoring System.
+// For details, see https://www.first.org/cvss/specification-document
+// This is a message we will try to use for storing various versions of CVSS
+// rather than making a separate proto for storing a specific version.
+message CVSS {
+ // The base score is a function of the base metric scores.
+ float base_score = 1;
+
+ float exploitability_score = 2;
+
+ float impact_score = 3;
+
+ // Base Metrics
+ // Represents the intrinsic characteristics of a vulnerability that are
+ // constant over time and across user environments.
+ AttackVector attack_vector = 4;
+ AttackComplexity attack_complexity = 5;
+ Authentication authentication = 6;
+ PrivilegesRequired privileges_required = 7;
+ UserInteraction user_interaction = 8;
+ Scope scope = 9;
+ Impact confidentiality_impact = 10;
+ Impact integrity_impact = 11;
+ Impact availability_impact = 12;
+
+ enum AttackVector {
+ ATTACK_VECTOR_UNSPECIFIED = 0;
+ ATTACK_VECTOR_NETWORK = 1;
+ ATTACK_VECTOR_ADJACENT = 2;
+ ATTACK_VECTOR_LOCAL = 3;
+ ATTACK_VECTOR_PHYSICAL = 4;
+ }
+
+ enum AttackComplexity {
+ ATTACK_COMPLEXITY_UNSPECIFIED = 0;
+ ATTACK_COMPLEXITY_LOW = 1;
+ ATTACK_COMPLEXITY_HIGH = 2;
+ }
+
+ enum Authentication {
+ AUTHENTICATION_UNSPECIFIED = 0;
+ AUTHENTICATION_MULTIPLE = 1;
+ AUTHENTICATION_SINGLE = 2;
+ AUTHENTICATION_NONE = 3;
+ }
+
+ enum PrivilegesRequired {
+ PRIVILEGES_REQUIRED_UNSPECIFIED = 0;
+ PRIVILEGES_REQUIRED_NONE = 1;
+ PRIVILEGES_REQUIRED_LOW = 2;
+ PRIVILEGES_REQUIRED_HIGH = 3;
+ }
+
+ enum UserInteraction {
+ USER_INTERACTION_UNSPECIFIED = 0;
+ USER_INTERACTION_NONE = 1;
+ USER_INTERACTION_REQUIRED = 2;
+ }
+
+ enum Scope {
+ SCOPE_UNSPECIFIED = 0;
+ SCOPE_UNCHANGED = 1;
+ SCOPE_CHANGED = 2;
+ }
+
+ enum Impact {
+ IMPACT_UNSPECIFIED = 0;
+ IMPACT_HIGH = 1;
+ IMPACT_LOW = 2;
+ IMPACT_NONE = 3;
+ }
+}
+
+// CVSS Version.
+enum CVSSVersion {
+ CVSS_VERSION_UNSPECIFIED = 0;
+ CVSS_VERSION_2 = 1;
+ CVSS_VERSION_3 = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/deployment.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/deployment.proto
new file mode 100644
index 00000000000..5204004fd64
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/deployment.proto
@@ -0,0 +1,66 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// An artifact that can be deployed in some runtime.
+message DeploymentNote {
+ // Required. Resource URI for the artifact being deployed.
+ repeated string resource_uri = 1;
+}
+
+// The period during which some deployable was active in a runtime.
+message DeploymentOccurrence {
+ // Identity of the user that triggered this deployment.
+ string user_email = 1;
+
+ // Required. Beginning of the lifetime of this deployment.
+ google.protobuf.Timestamp deploy_time = 2;
+
+ // End of the lifetime of this deployment.
+ google.protobuf.Timestamp undeploy_time = 3;
+
+ // Configuration used to create this deployment.
+ string config = 4;
+
+ // Address of the runtime element hosting this deployment.
+ string address = 5;
+
+ // Output only. Resource URI for the artifact being deployed taken from
+ // the deployable field with the same name.
+ repeated string resource_uri = 6;
+
+ // Types of platforms.
+ enum Platform {
+ // Unknown.
+ PLATFORM_UNSPECIFIED = 0;
+ // Google Container Engine.
+ GKE = 1;
+ // Google App Engine: Flexible Environment.
+ FLEX = 2;
+ // Custom user-defined platform.
+ CUSTOM = 3;
+ }
+ // Platform hosting this deployment.
+ Platform platform = 7;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/discovery.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/discovery.proto
new file mode 100644
index 00000000000..bfb94e4a347
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/discovery.proto
@@ -0,0 +1,104 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/api/field_behavior.proto";
+import "google/protobuf/timestamp.proto";
+import "google/rpc/status.proto";
+import "grafeas/v1/common.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// A note that indicates a type of analysis a provider would perform. This note
+// exists in a provider's project. A `Discovery` occurrence is created in a
+// consumer's project at the start of analysis.
+message DiscoveryNote {
+ // Required. Immutable. The kind of analysis that is handled by this
+ // discovery.
+ grafeas.v1.NoteKind analysis_kind = 1;
+}
+
+// Provides information about the analysis status of a discovered resource.
+message DiscoveryOccurrence {
+ // Whether the resource is continuously analyzed.
+ enum ContinuousAnalysis {
+ // Unknown.
+ CONTINUOUS_ANALYSIS_UNSPECIFIED = 0;
+ // The resource is continuously analyzed.
+ ACTIVE = 1;
+ // The resource is ignored for continuous analysis.
+ INACTIVE = 2;
+ }
+
+ // Whether the resource is continuously analyzed.
+ ContinuousAnalysis continuous_analysis = 1;
+
+ // Analysis status for a resource. Currently for initial analysis only (not
+ // updated in continuous analysis).
+ enum AnalysisStatus {
+ option allow_alias = true;
+
+ // Unknown.
+ ANALYSIS_STATUS_UNSPECIFIED = 0;
+ // Resource is known but no action has been taken yet.
+ PENDING = 1;
+ // Resource is being analyzed.
+ SCANNING = 2;
+ // Analysis has finished successfully.
+ FINISHED_SUCCESS = 3;
+ // Analysis has completed.
+ COMPLETE = 3;
+ // Analysis has finished unsuccessfully, the analysis itself is in a bad
+ // state.
+ FINISHED_FAILED = 4;
+ // The resource is known not to be supported.
+ FINISHED_UNSUPPORTED = 5;
+ }
+
+ // The status of discovery for the resource.
+ AnalysisStatus analysis_status = 2;
+
+ // Indicates which analysis completed successfully. Multiple types of
+ // analysis can be performed on a single resource.
+ message AnalysisCompleted {
+ repeated string analysis_type = 1;
+ }
+
+ AnalysisCompleted analysis_completed = 7;
+
+ // Indicates any errors encountered during analysis of a resource. There
+ // could be 0 or more of these errors.
+ repeated google.rpc.Status analysis_error = 8;
+
+ // When an error is encountered this will contain a LocalizedMessage under
+ // details to show to the user. The LocalizedMessage is output only and
+ // populated by the API.
+ google.rpc.Status analysis_status_error = 3;
+
+ // The CPE of the resource being scanned.
+ string cpe = 4;
+
+ // The last time this resource was scanned.
+ google.protobuf.Timestamp last_scan_time = 5;
+
+ // The time occurrences related to this discovery occurrence were archived.
+ google.protobuf.Timestamp archive_time = 6
+ [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/dsse_attestation.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/dsse_attestation.proto
new file mode 100644
index 00000000000..34ba3df9f9b
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/dsse_attestation.proto
@@ -0,0 +1,52 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "grafeas/v1/common.proto";
+import "grafeas/v1/intoto_statement.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+message DSSEAttestationNote {
+ // This submessage provides human-readable hints about the purpose of the
+ // authority. Because the name of a note acts as its resource reference, it is
+ // important to disambiguate the canonical name of the Note (which might be a
+ // UUID for security purposes) from "readable" names more suitable for debug
+ // output. Note that these hints should not be used to look up authorities in
+ // security sensitive contexts, such as when looking up attestations to
+ // verify.
+ message DSSEHint {
+ // Required. The human readable name of this attestation authority, for
+ // example "cloudbuild-prod".
+ string human_readable_name = 1;
+ }
+ // DSSEHint hints at the purpose of the attestation authority.
+ DSSEHint hint = 1;
+}
+
+// Deprecated. Prefer to use a regular Occurrence, and populate the
+// Envelope at the top level of the Occurrence.
+message DSSEAttestationOccurrence {
+ // If doing something security critical, make sure to verify the signatures in
+ // this metadata.
+ Envelope envelope = 1;
+ oneof decoded_payload {
+ InTotoStatement statement = 2;
+ }
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/grafeas.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/grafeas.proto
new file mode 100644
index 00000000000..5665fe3623e
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/grafeas.proto
@@ -0,0 +1,544 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/timestamp.proto";
+import "grafeas/v1/attestation.proto";
+import "grafeas/v1/build.proto";
+import "grafeas/v1/common.proto";
+import "grafeas/v1/compliance.proto";
+import "grafeas/v1/deployment.proto";
+import "grafeas/v1/discovery.proto";
+import "grafeas/v1/dsse_attestation.proto";
+import "grafeas/v1/image.proto";
+import "grafeas/v1/package.proto";
+import "grafeas/v1/upgrade.proto";
+import "grafeas/v1/vulnerability.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+option (google.api.resource_definition) = {
+ type: "grafeas.io/Project"
+ pattern: "projects/{project}"
+};
+
+// [Grafeas](https://grafeas.io) API.
+//
+// Retrieves analysis results of Cloud components such as Docker container
+// images.
+//
+// Analysis results are stored as a series of occurrences. An `Occurrence`
+// contains information about a specific analysis instance on a resource. An
+// occurrence refers to a `Note`. A note contains details describing the
+// analysis and is generally stored in a separate project, called a `Provider`.
+// Multiple occurrences can refer to the same note.
+//
+// For example, an SSL vulnerability could affect multiple images. In this case,
+// there would be one note for the vulnerability and an occurrence for each
+// image with the vulnerability referring to that note.
+service Grafeas {
+ option (google.api.default_host) = "containeranalysis.googleapis.com";
+
+ // Gets the specified occurrence.
+ rpc GetOccurrence(GetOccurrenceRequest) returns (Occurrence) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/occurrences/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists occurrences for the specified project.
+ rpc ListOccurrences(ListOccurrencesRequest)
+ returns (ListOccurrencesResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*}/occurrences"
+ };
+ option (google.api.method_signature) = "parent,filter";
+ }
+
+ // Deletes the specified occurrence. For example, use this method to delete an
+ // occurrence when the occurrence is no longer applicable for the given
+ // resource.
+ rpc DeleteOccurrence(DeleteOccurrenceRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/occurrences/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a new occurrence.
+ rpc CreateOccurrence(CreateOccurrenceRequest) returns (Occurrence) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*}/occurrences"
+ body: "occurrence"
+ };
+ option (google.api.method_signature) = "parent,occurrence";
+ }
+
+ // Creates new occurrences in batch.
+ rpc BatchCreateOccurrences(BatchCreateOccurrencesRequest)
+ returns (BatchCreateOccurrencesResponse) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*}/occurrences:batchCreate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent,occurrences";
+ }
+
+ // Updates the specified occurrence.
+ rpc UpdateOccurrence(UpdateOccurrenceRequest) returns (Occurrence) {
+ option (google.api.http) = {
+ patch: "/v1/{name=projects/*/occurrences/*}"
+ body: "occurrence"
+ };
+ option (google.api.method_signature) = "name,occurrence,update_mask";
+ }
+
+ // Gets the note attached to the specified occurrence. Consumer projects can
+ // use this method to get a note that belongs to a provider project.
+ rpc GetOccurrenceNote(GetOccurrenceNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/occurrences/*}/notes"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets the specified note.
+ rpc GetNote(GetNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/notes/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists notes for the specified project.
+ rpc ListNotes(ListNotesRequest) returns (ListNotesResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*}/notes"
+ };
+ option (google.api.method_signature) = "parent,filter";
+ }
+
+ // Deletes the specified note.
+ rpc DeleteNote(DeleteNoteRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/notes/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a new note.
+ rpc CreateNote(CreateNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*}/notes"
+ body: "note"
+ };
+ option (google.api.method_signature) = "parent,note_id,note";
+ }
+
+ // Creates new notes in batch.
+ rpc BatchCreateNotes(BatchCreateNotesRequest)
+ returns (BatchCreateNotesResponse) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*}/notes:batchCreate"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent,notes";
+ }
+
+ // Updates the specified note.
+ rpc UpdateNote(UpdateNoteRequest) returns (Note) {
+ option (google.api.http) = {
+ patch: "/v1/{name=projects/*/notes/*}"
+ body: "note"
+ };
+ option (google.api.method_signature) = "name,note,update_mask";
+ }
+
+ // Lists occurrences referencing the specified note. Provider projects can use
+ // this method to get all occurrences across consumer projects referencing the
+ // specified note.
+ rpc ListNoteOccurrences(ListNoteOccurrencesRequest)
+ returns (ListNoteOccurrencesResponse) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/notes/*}/occurrences"
+ };
+ option (google.api.method_signature) = "name,filter";
+ }
+}
+
+// An instance of an analysis type that has been found on a resource.
+message Occurrence {
+ option (google.api.resource) = {
+ type: "grafeas.io/Occurrence"
+ pattern: "projects/{project}/occurrences/{occurrence}"
+ };
+
+ // Output only. The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1;
+
+ // Required. Immutable. A URI that represents the resource for which the
+ // occurrence applies. For example,
+ // `https://gcr.io/project/image@sha256:123abc` for a Docker image.
+ string resource_uri = 2;
+
+ // Required. Immutable. The analysis note associated with this occurrence, in
+ // the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This field can be
+ // used as a filter in list requests.
+ string note_name = 3;
+
+ // Output only. This explicitly denotes which of the occurrence details are
+ // specified. This field can be used as a filter in list requests.
+ grafeas.v1.NoteKind kind = 4;
+
+ // A description of actions that can be taken to remedy the note.
+ string remediation = 5;
+
+ // Output only. The time this occurrence was created.
+ google.protobuf.Timestamp create_time = 6;
+
+ // Output only. The time this occurrence was last updated.
+ google.protobuf.Timestamp update_time = 7;
+
+ // Required. Immutable. Describes the details of the note kind found on this
+ // resource.
+ oneof details {
+ // Describes a security vulnerability.
+ grafeas.v1.VulnerabilityOccurrence vulnerability = 8;
+ // Describes a verifiable build.
+ grafeas.v1.BuildOccurrence build = 9;
+ // Describes how this resource derives from the basis in the associated
+ // note.
+ grafeas.v1.ImageOccurrence image = 10;
+ // Describes the installation of a package on the linked resource.
+ grafeas.v1.PackageOccurrence package = 11;
+ // Describes the deployment of an artifact on a runtime.
+ grafeas.v1.DeploymentOccurrence deployment = 12;
+ // Describes when a resource was discovered.
+ grafeas.v1.DiscoveryOccurrence discovery = 13;
+ // Describes an attestation of an artifact.
+ grafeas.v1.AttestationOccurrence attestation = 14;
+ // Describes an available package upgrade on the linked resource.
+ grafeas.v1.UpgradeOccurrence upgrade = 15;
+ // Describes a compliance violation on a linked resource.
+ grafeas.v1.ComplianceOccurrence compliance = 16;
+ // Describes an attestation of an artifact using dsse.
+ grafeas.v1.DSSEAttestationOccurrence dsse_attestation = 17;
+ }
+
+ // https://github.com/secure-systems-lab/dsse
+ grafeas.v1.Envelope envelope = 18;
+}
+
+// A type of analysis that can be done for a resource.
+message Note {
+ option (google.api.resource) = {
+ type: "grafeas.io/Note"
+ pattern: "projects/{project}/notes/{note}"
+ };
+
+ // Output only. The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1;
+
+ // A one sentence description of this note.
+ string short_description = 2;
+
+ // A detailed description of this note.
+ string long_description = 3;
+
+ // Output only. The type of analysis. This field can be used as a filter in
+ // list requests.
+ grafeas.v1.NoteKind kind = 4;
+
+ // URLs associated with this note.
+ repeated grafeas.v1.RelatedUrl related_url = 5;
+
+ // Time of expiration for this note. Empty if note does not expire.
+ google.protobuf.Timestamp expiration_time = 6;
+
+ // Output only. The time this note was created. This field can be used as a
+ // filter in list requests.
+ google.protobuf.Timestamp create_time = 7;
+
+ // Output only. The time this note was last updated. This field can be used as
+ // a filter in list requests.
+ google.protobuf.Timestamp update_time = 8;
+
+ // Other notes related to this note.
+ repeated string related_note_names = 9;
+
+ // Required. Immutable. The type of analysis this note represents.
+ oneof type {
+ // A note describing a package vulnerability.
+ grafeas.v1.VulnerabilityNote vulnerability = 10;
+ // A note describing build provenance for a verifiable build.
+ grafeas.v1.BuildNote build = 11;
+ // A note describing a base image.
+ grafeas.v1.ImageNote image = 12;
+ // A note describing a package hosted by various package managers.
+ grafeas.v1.PackageNote package = 13;
+ // A note describing something that can be deployed.
+ grafeas.v1.DeploymentNote deployment = 14;
+ // A note describing the initial analysis of a resource.
+ grafeas.v1.DiscoveryNote discovery = 15;
+ // A note describing an attestation role.
+ grafeas.v1.AttestationNote attestation = 16;
+ // A note describing available package upgrades.
+ grafeas.v1.UpgradeNote upgrade = 17;
+ // A note describing a compliance check.
+ grafeas.v1.ComplianceNote compliance = 18;
+ // A note describing a dsse attestation note.
+ grafeas.v1.DSSEAttestationNote dsse_attestation = 19;
+ }
+}
+
+// Request to get an occurrence.
+message GetOccurrenceRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Occurrence"
+ ];
+}
+
+// Request to list occurrences.
+message ListOccurrencesRequest {
+ // The name of the project to list occurrences for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Project"
+ ];
+
+ // The filter expression.
+ string filter = 2;
+
+ // Number of occurrences to return in the list. Must be positive. Max allowed
+ // page size is 1000. If not specified, page size defaults to 20.
+ int32 page_size = 3;
+
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+}
+
+// Response for listing occurrences.
+message ListOccurrencesResponse {
+ // The occurrences requested.
+ repeated Occurrence occurrences = 1;
+ // The next pagination token in the list response. It should be used as
+ // `page_token` for the following request. An empty value means no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request to delete an occurrence.
+message DeleteOccurrenceRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Occurrence"
+ ];
+}
+
+// Request to create a new occurrence.
+message CreateOccurrenceRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the occurrence is to be created.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Project"
+ ];
+ // The occurrence to create.
+ Occurrence occurrence = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request to update an occurrence.
+message UpdateOccurrenceRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Occurrence"
+ ];
+ // The updated occurrence.
+ Occurrence occurrence = 2 [(google.api.field_behavior) = REQUIRED];
+ // The fields to update.
+ google.protobuf.FieldMask update_mask = 3;
+}
+
+// Request to get a note.
+message GetNoteRequest {
+ // The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Note"
+ ];
+}
+
+// Request to get the note to which the specified occurrence is attached.
+message GetOccurrenceNoteRequest {
+ // The name of the occurrence in the form of
+ // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Occurrence"
+ ];
+}
+
+// Request to list notes.
+message ListNotesRequest {
+ // The name of the project to list notes for in the form of
+ // `projects/[PROJECT_ID]`.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Project"
+ ];
+
+ // The filter expression.
+ string filter = 2;
+
+ // Number of notes to return in the list. Must be positive. Max allowed page
+ // size is 1000. If not specified, page size defaults to 20.
+ int32 page_size = 3;
+
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+}
+
+// Response for listing notes.
+message ListNotesResponse {
+ // The notes requested.
+ repeated Note notes = 1;
+ // The next pagination token in the list response. It should be used as
+ // `page_token` for the following request. An empty value means no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request to delete a note.
+message DeleteNoteRequest {
+ // The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Note"
+ ];
+}
+
+// Request to create a new note.
+message CreateNoteRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the note is to be created.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Project"
+ ];
+ // The ID to use for this note.
+ string note_id = 2 [(google.api.field_behavior) = REQUIRED];
+ // The note to create.
+ Note note = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request to update a note.
+message UpdateNoteRequest {
+ // The name of the note in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Note"
+ ];
+ // The updated note.
+ Note note = 2 [(google.api.field_behavior) = REQUIRED];
+ // The fields to update.
+ google.protobuf.FieldMask update_mask = 3;
+}
+
+// Request to list occurrences for a note.
+message ListNoteOccurrencesRequest {
+ // The name of the note to list occurrences for in the form of
+ // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Note"
+ ];
+ // The filter expression.
+ string filter = 2;
+ // Number of occurrences to return in the list.
+ int32 page_size = 3;
+ // Token to provide to skip to a particular spot in the list.
+ string page_token = 4;
+}
+
+// Response for listing occurrences for a note.
+message ListNoteOccurrencesResponse {
+ // The occurrences attached to the specified note.
+ repeated Occurrence occurrences = 1;
+ // Token to provide to skip to a particular spot in the list.
+ string next_page_token = 2;
+}
+
+// Request to create notes in batch.
+message BatchCreateNotesRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the notes are to be created.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Project"
+ ];
+
+ // The notes to create. Max allowed length is 1000.
+ map notes = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response for creating notes in batch.
+message BatchCreateNotesResponse {
+ // The notes that were created.
+ repeated Note notes = 1;
+}
+
+// Request to create occurrences in batch.
+message BatchCreateOccurrencesRequest {
+ // The name of the project in the form of `projects/[PROJECT_ID]`, under which
+ // the occurrences are to be created.
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference).type = "grafeas.io/Project"
+ ];
+
+ // The occurrences to create. Max allowed length is 1000.
+ repeated Occurrence occurrences = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Response for creating occurrences in batch.
+message BatchCreateOccurrencesResponse {
+ // The occurrences that were created.
+ repeated Occurrence occurrences = 1;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/image.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/image.proto
new file mode 100644
index 00000000000..9ac162cec22
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/image.proto
@@ -0,0 +1,83 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// Layer holds metadata specific to a layer of a Docker image.
+message Layer {
+ // Required. The recovered Dockerfile directive used to construct this layer.
+ // See https://docs.docker.com/engine/reference/builder/ for more information.
+ string directive = 1;
+
+ // The recovered arguments to the Dockerfile directive.
+ string arguments = 2;
+}
+
+// A set of properties that uniquely identify a given Docker image.
+message Fingerprint {
+ // Required. The layer ID of the final layer in the Docker image's v1
+ // representation.
+ string v1_name = 1;
+
+ // Required. The ordered list of v2 blobs that represent a given image.
+ repeated string v2_blob = 2;
+
+ // Output only. The name of the image's v2 blobs computed via:
+ // [bottom] := v2_blob[bottom]
+ // [N] := sha256(v2_blob[N] + " " + v2_name[N+1])
+ // Only the name of the final blob is kept.
+ string v2_name = 3;
+}
+
+// Basis describes the base image portion (Note) of the DockerImage
+// relationship. Linked occurrences are derived from this or an equivalent image
+// via:
+// FROM
+// Or an equivalent reference, e.g., a tag of the resource_url.
+message ImageNote {
+ // Required. Immutable. The resource_url for the resource representing the
+ // basis of associated occurrence images.
+ string resource_url = 1;
+
+ // Required. Immutable. The fingerprint of the base image.
+ Fingerprint fingerprint = 2;
+}
+
+// Details of the derived image portion of the DockerImage relationship. This
+// image would be produced from a Dockerfile with FROM .
+message ImageOccurrence {
+ // Required. The fingerprint of the derived image.
+ Fingerprint fingerprint = 1;
+
+ // Output only. The number of layers by which this image differs from the
+ // associated image basis.
+ int32 distance = 2;
+
+ // This contains layer-specific metadata, if populated it has length
+ // "distance" and is ordered with [distance] being the layer immediately
+ // following the base image and [1] being the final layer.
+ repeated Layer layer_info = 3;
+
+ // Output only. This contains the base image URL for the derived image
+ // occurrence.
+ string base_resource_url = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/intoto_provenance.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/intoto_provenance.proto
new file mode 100644
index 00000000000..78886b66e48
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/intoto_provenance.proto
@@ -0,0 +1,113 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/protobuf/any.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+option java_outer_classname = "InTotoProvenanceProto";
+
+// Spec defined at
+// https://github.com/in-toto/attestation/blob/main/spec/predicates/provenance.md
+
+// Steps taken to build the artifact.
+// For a TaskRun, typically each container corresponds to one step in the
+// recipe.
+message Recipe {
+ // URI indicating what type of recipe was performed. It determines the meaning
+ // of recipe.entryPoint, recipe.arguments, recipe.environment, and materials.
+ string type = 1;
+ // Index in materials containing the recipe steps that are not implied by
+ // recipe.type. For example, if the recipe type were "make", then this would
+ // point to the source containing the Makefile, not the make program itself.
+ // Set to -1 if the recipe doesn't come from a material, as zero is default
+ // unset value for int64.
+ int64 defined_in_material = 2;
+ // String identifying the entry point into the build.
+ // This is often a path to a configuration file and/or a target label within
+ // that file. The syntax and meaning are defined by recipe.type. For example,
+ // if the recipe type were "make", then this would reference the directory in
+ // which to run make as well as which target to use.
+ string entry_point = 3;
+ // Collection of all external inputs that influenced the build on top of
+ // recipe.definedInMaterial and recipe.entryPoint. For example, if the recipe
+ // type were "make", then this might be the flags passed to make aside from
+ // the target, which is captured in recipe.entryPoint. Since the arguments
+ // field can greatly vary in structure, depending on the builder and recipe
+ // type, this is of form "Any".
+ repeated google.protobuf.Any arguments = 4;
+ // Any other builder-controlled inputs necessary for correctly evaluating the
+ // recipe. Usually only needed for reproducing the build but not evaluated as
+ // part of policy. Since the environment field can greatly vary in structure,
+ // depending on the builder and recipe type, this is of form "Any".
+ repeated google.protobuf.Any environment = 5;
+}
+
+// Indicates that the builder claims certain fields in this message to be
+// complete.
+message Completeness {
+ // If true, the builder claims that recipe.arguments is complete, meaning that
+ // all external inputs are properly captured in the recipe.
+ bool arguments = 1;
+ // If true, the builder claims that recipe.environment is claimed to be
+ // complete.
+ bool environment = 2;
+ // If true, the builder claims that materials are complete, usually through
+ // some controls to prevent network access. Sometimes called "hermetic".
+ bool materials = 3;
+}
+
+// Other properties of the build.
+message Metadata {
+ // Identifies the particular build invocation, which can be useful for finding
+ // associated logs or other ad-hoc analysis. The value SHOULD be globally
+ // unique, per in-toto Provenance spec.
+ string build_invocation_id = 1;
+ // The timestamp of when the build started.
+ google.protobuf.Timestamp build_started_on = 2;
+ // The timestamp of when the build completed.
+ google.protobuf.Timestamp build_finished_on = 3;
+ // Indicates that the builder claims certain fields in this message to be
+ // complete.
+ Completeness completeness = 4;
+ // If true, the builder claims that running the recipe on materials will
+ // produce bit-for-bit identical output.
+ bool reproducible = 5;
+}
+
+message BuilderConfig {
+ string id = 1;
+}
+
+message InTotoProvenance {
+ BuilderConfig builder_config = 1; // required
+ // Identifies the configuration used for the build.
+ // When combined with materials, this SHOULD fully describe the build,
+ // such that re-running this recipe results in bit-for-bit identical output
+ // (if the build is reproducible).
+ Recipe recipe = 2; // required
+ Metadata metadata = 3;
+ // The collection of artifacts that influenced the build including sources,
+ // dependencies, build tools, base images, and so on. This is considered to be
+ // incomplete unless metadata.completeness.materials is true. Unset or null is
+ // equivalent to empty.
+ repeated string materials = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/intoto_statement.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/intoto_statement.proto
new file mode 100644
index 00000000000..1f798d0d65f
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/intoto_statement.proto
@@ -0,0 +1,52 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "grafeas/v1/intoto_provenance.proto";
+import "grafeas/v1/slsa_provenance.proto";
+import "grafeas/v1/slsa_provenance_zero_two.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+option java_outer_classname = "InTotoStatementProto";
+
+// Spec defined at
+// https://github.com/in-toto/attestation/tree/main/spec#statement The
+// serialized InTotoStatement will be stored as Envelope.payload.
+// Envelope.payloadType is always "application/vnd.in-toto+json".
+message InTotoStatement {
+ // Always `https://in-toto.io/Statement/v0.1`.
+ string type = 1 [json_name = "_type"];
+ repeated Subject subject = 2;
+ // `https://slsa.dev/provenance/v0.1` for SlsaProvenance.
+ string predicate_type = 3;
+ oneof predicate {
+ InTotoProvenance provenance = 4;
+ SlsaProvenance slsa_provenance = 5;
+ SlsaProvenanceZeroTwo slsa_provenance_zero_two = 6;
+ }
+}
+message Subject {
+ string name = 1;
+ // `"": ""`
+ // Algorithms can be e.g. sha256, sha512
+ // See
+ // https://github.com/in-toto/attestation/blob/main/spec/field_types.md#DigestSet
+ map digest = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/package.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/package.proto
new file mode 100644
index 00000000000..61b21dbf032
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/package.proto
@@ -0,0 +1,192 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/api/field_behavior.proto";
+import "grafeas/v1/common.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// Instruction set architectures supported by various package managers.
+enum Architecture {
+ // Unknown architecture.
+ ARCHITECTURE_UNSPECIFIED = 0;
+ // X86 architecture.
+ X86 = 1;
+ // X64 architecture.
+ X64 = 2;
+}
+
+// This represents a particular channel of distribution for a given package.
+// E.g., Debian's jessie-backports dpkg mirror.
+message Distribution {
+ // The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
+ // denoting the package manager version distributing a package.
+ string cpe_uri = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The CPU architecture for which packages in this distribution channel were
+ // built.
+ Architecture architecture = 2;
+
+ // The latest available version of this package in this distribution channel.
+ Version latest_version = 3;
+
+ // A freeform string denoting the maintainer of this package.
+ string maintainer = 4;
+
+ // The distribution channel-specific homepage for this package.
+ string url = 5;
+
+ // The distribution channel-specific description of this package.
+ string description = 6;
+}
+
+// An occurrence of a particular package installation found within a system's
+// filesystem. E.g., glibc was found in `/var/lib/dpkg/status`.
+message Location {
+ // Deprecated.
+ // The CPE URI in [CPE format](https://cpe.mitre.org/specification/)
+ string cpe_uri = 1;
+
+ // Deprecated.
+ // The version installed at this location.
+ Version version = 2;
+
+ // The path from which we gathered that this package/version is installed.
+ string path = 3;
+}
+
+// PackageNote represents a particular package version.
+message PackageNote {
+ // The name of the package.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.field_behavior) = IMMUTABLE
+ ];
+
+ // Deprecated.
+ // The various channels by which a package is distributed.
+ repeated Distribution distribution = 10;
+
+ // The type of package; whether native or non native (e.g., ruby gems,
+ // node.js packages, etc.).
+ string package_type = 11;
+
+ // The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
+ // denoting the package manager version distributing a package.
+ // The cpe_uri will be blank for language packages.
+ string cpe_uri = 12;
+
+ // The CPU architecture for which packages in this distribution channel were
+ // built. Architecture will be blank for language packages.
+ Architecture architecture = 13;
+
+ // The version of the package.
+ Version version = 14;
+
+ // A freeform text denoting the maintainer of this package.
+ string maintainer = 15;
+
+ // The homepage for this package.
+ string url = 16;
+
+ // The description of this package.
+ string description = 17;
+
+ // Licenses that have been declared by the authors of the package.
+ License license = 18;
+
+ // Hash value, typically a file digest, that allows unique
+ // identification a specific package.
+ repeated Digest digest = 19;
+}
+
+// Details on how a particular software package was installed on a system.
+message PackageOccurrence {
+ // The name of the installed package.
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.field_behavior) = OUTPUT_ONLY
+ ];
+
+ // All of the places within the filesystem versions of this package
+ // have been found.
+ repeated Location location = 2;
+
+ // The type of package; whether native or non native (e.g., ruby gems,
+ // node.js packages, etc.).
+ string package_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The cpe_uri in [CPE format](https://cpe.mitre.org/specification/)
+ // denoting the package manager version distributing a package.
+ // The cpe_uri will be blank for language packages.
+ string cpe_uri = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The CPU architecture for which packages in this distribution channel were
+ // built. Architecture will be blank for language packages.
+ Architecture architecture = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Licenses that have been declared by the authors of the package.
+ License license = 6;
+
+ // The version of the package.
+ Version version = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// Version contains structured information about the version of a package.
+message Version {
+ // Used to correct mistakes in the version numbering scheme.
+ int32 epoch = 1;
+
+ // Required only when version kind is NORMAL. The main part of the version
+ // name.
+ string name = 2;
+
+ // The iteration of the package build from the above version.
+ string revision = 3;
+
+ // Whether this version is specifying part of an inclusive range. Grafeas
+ // does not have the capability to specify version ranges; instead we have
+ // fields that specify start version and end versions. At times this is
+ // insufficient - we also need to specify whether the version is included in
+ // the range or is excluded from the range. This boolean is expected to be set
+ // to true when the version is included in a range.
+ bool inclusive = 6;
+
+ // Whether this is an ordinary package version or a sentinel MIN/MAX version.
+ enum VersionKind {
+ // Unknown.
+ VERSION_KIND_UNSPECIFIED = 0;
+ // A standard package version.
+ NORMAL = 1;
+ // A special version representing negative infinity.
+ MINIMUM = 2;
+ // A special version representing positive infinity.
+ MAXIMUM = 3;
+ }
+
+ // Required. Distinguishes between sentinel MIN/MAX versions and normal
+ // versions.
+ VersionKind kind = 4;
+
+ // Human readable version string. This string is of the form
+ // :- and is only set when kind is NORMAL.
+ string full_name = 5;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/provenance.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/provenance.proto
new file mode 100644
index 00000000000..06b109785f8
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/provenance.proto
@@ -0,0 +1,265 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// Provenance of a build. Contains all information needed to verify the full
+// details about the build from source to completion.
+message BuildProvenance {
+ // Required. Unique identifier of the build.
+ string id = 1;
+
+ // ID of the project.
+ string project_id = 2;
+
+ // Commands requested by the build.
+ repeated Command commands = 3;
+
+ // Output of the build.
+ repeated Artifact built_artifacts = 4;
+
+ // Time at which the build was created.
+ google.protobuf.Timestamp create_time = 5;
+
+ // Time at which execution of the build was started.
+ google.protobuf.Timestamp start_time = 6;
+
+ // Time at which execution of the build was finished.
+ google.protobuf.Timestamp end_time = 7;
+
+ // E-mail address of the user who initiated this build. Note that this was the
+ // user's e-mail address at the time the build was initiated; this address may
+ // not represent the same end-user for all time.
+ string creator = 8;
+
+ // URI where any logs for this provenance were written.
+ string logs_uri = 9;
+
+ // Details of the Source input to the build.
+ Source source_provenance = 10;
+
+ // Trigger identifier if the build was triggered automatically; empty if not.
+ string trigger_id = 11;
+
+ // Special options applied to this build. This is a catch-all field where
+ // build providers can enter any desired additional details.
+ map build_options = 12;
+
+ // Version string of the builder at the time this build was executed.
+ string builder_version = 13;
+}
+
+// Source describes the location of the source used for the build.
+message Source {
+ // If provided, the input binary artifacts for the build came from this
+ // location.
+ string artifact_storage_source_uri = 1;
+
+ // Hash(es) of the build source, which can be used to verify that the original
+ // source integrity was maintained in the build.
+ //
+ // The keys to this map are file paths used as build source and the values
+ // contain the hash values for those files.
+ //
+ // If the build source came in a single package such as a gzipped tarfile
+ // (.tar.gz), the FileHash will be for the single path to that file.
+ map file_hashes = 2;
+
+ // If provided, the source code used for the build came from this location.
+ SourceContext context = 3;
+
+ // If provided, some of the source code used for the build may be found in
+ // these locations, in the case where the source repository had multiple
+ // remotes or submodules. This list will not include the context specified in
+ // the context field.
+ repeated SourceContext additional_contexts = 4;
+}
+
+// Container message for hashes of byte content of files, used in source
+// messages to verify integrity of source input to the build.
+message FileHashes {
+ // Required. Collection of file hashes.
+ repeated Hash file_hash = 1;
+}
+
+// Container message for hash values.
+message Hash {
+ // Required. The type of hash that was performed, e.g. "SHA-256".
+ string type = 1;
+ // Required. The hash value.
+ bytes value = 2;
+}
+
+// Command describes a step performed as part of the build pipeline.
+message Command {
+ // Required. Name of the command, as presented on the command line, or if the
+ // command is packaged as a Docker container, as presented to `docker pull`.
+ string name = 1;
+
+ // Environment variables set before running this command.
+ repeated string env = 2;
+
+ // Command-line arguments used when executing this command.
+ repeated string args = 3;
+
+ // Working directory (relative to project source root) used when running this
+ // command.
+ string dir = 4;
+
+ // Optional unique identifier for this command, used in wait_for to reference
+ // this command as a dependency.
+ string id = 5;
+
+ // The ID(s) of the command(s) that this command depends on.
+ repeated string wait_for = 6;
+}
+
+// Artifact describes a build product.
+message Artifact {
+ // Hash or checksum value of a binary, or Docker Registry 2.0 digest of a
+ // container.
+ string checksum = 1;
+
+ // Artifact ID, if any; for container images, this will be a URL by digest
+ // like `gcr.io/projectID/imagename@sha256:123456`.
+ string id = 2;
+
+ // Related artifact names. This may be the path to a binary or jar file, or in
+ // the case of a container build, the name used to push the container image to
+ // Google Container Registry, as presented to `docker push`. Note that a
+ // single Artifact ID can have multiple names, for example if two tags are
+ // applied to one image.
+ repeated string names = 3;
+}
+
+// A SourceContext is a reference to a tree of files. A SourceContext together
+// with a path point to a unique revision of a single file or directory.
+message SourceContext {
+ // A SourceContext can refer any one of the following types of repositories.
+ oneof context {
+ // A SourceContext referring to a revision in a Google Cloud Source Repo.
+ CloudRepoSourceContext cloud_repo = 1;
+
+ // A SourceContext referring to a Gerrit project.
+ GerritSourceContext gerrit = 2;
+
+ // A SourceContext referring to any third party Git repo (e.g., GitHub).
+ GitSourceContext git = 3;
+ }
+
+ // Labels with user defined metadata.
+ map labels = 4;
+}
+
+// An alias to a repo revision.
+message AliasContext {
+ // The type of an alias.
+ enum Kind {
+ // Unknown.
+ KIND_UNSPECIFIED = 0;
+ // Git tag.
+ FIXED = 1;
+ // Git branch.
+ MOVABLE = 2;
+ // Used to specify non-standard aliases. For example, if a Git repo has a
+ // ref named "refs/foo/bar".
+ OTHER = 4;
+ }
+
+ // The alias kind.
+ Kind kind = 1;
+
+ // The alias name.
+ string name = 2;
+}
+
+// A CloudRepoSourceContext denotes a particular revision in a Google Cloud
+// Source Repo.
+message CloudRepoSourceContext {
+ // The ID of the repo.
+ RepoId repo_id = 1;
+
+ // A revision in a Cloud Repo can be identified by either its revision ID or
+ // its alias.
+ oneof revision {
+ // A revision ID.
+ string revision_id = 2;
+
+ // An alias, which may be a branch or tag.
+ AliasContext alias_context = 3;
+ }
+}
+
+// A SourceContext referring to a Gerrit project.
+message GerritSourceContext {
+ // The URI of a running Gerrit instance.
+ string host_uri = 1;
+
+ // The full project name within the host. Projects may be nested, so
+ // "project/subproject" is a valid project name. The "repo name" is the
+ // hostURI/project.
+ string gerrit_project = 2;
+
+ // A revision in a Gerrit project can be identified by either its revision ID
+ // or its alias.
+ oneof revision {
+ // A revision (commit) ID.
+ string revision_id = 3;
+
+ // An alias, which may be a branch or tag.
+ AliasContext alias_context = 4;
+ }
+}
+
+// A GitSourceContext denotes a particular revision in a third party Git
+// repository (e.g., GitHub).
+message GitSourceContext {
+ // Git repository URL.
+ string url = 1;
+
+ // Git commit hash.
+ string revision_id = 2;
+}
+
+// A unique identifier for a Cloud Repo.
+message RepoId {
+ // A cloud repo can be identified by either its project ID and repository name
+ // combination, or its globally unique identifier.
+ oneof id {
+ // A combination of a project ID and a repo name.
+ ProjectRepoId project_repo_id = 1;
+
+ // A server-assigned, globally unique identifier.
+ string uid = 2;
+ }
+}
+
+// Selects a repo using a Google Cloud Platform project ID (e.g.,
+// winged-cargo-31) and a repo name within that project.
+message ProjectRepoId {
+ // The ID of the project.
+ string project_id = 1;
+
+ // The name of the repo. Leave empty for the default repo.
+ string repo_name = 2;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/severity.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/severity.proto
new file mode 100644
index 00000000000..cc9cc384535
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/severity.proto
@@ -0,0 +1,38 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// Note provider assigned severity/impact ranking.
+enum Severity {
+ // Unknown.
+ SEVERITY_UNSPECIFIED = 0;
+ // Minimal severity.
+ MINIMAL = 1;
+ // Low severity.
+ LOW = 2;
+ // Medium severity.
+ MEDIUM = 3;
+ // High severity.
+ HIGH = 4;
+ // Critical severity.
+ CRITICAL = 5;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/slsa_provenance.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/slsa_provenance.proto
new file mode 100644
index 00000000000..c038af064e0
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/slsa_provenance.proto
@@ -0,0 +1,115 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/protobuf/any.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+option java_outer_classname = "SlsaProvenanceProto";
+
+message SlsaProvenance {
+ // Steps taken to build the artifact.
+ // For a TaskRun, typically each container corresponds to one step in the
+ // recipe.
+ message SlsaRecipe {
+ // URI indicating what type of recipe was performed. It determines the
+ // meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and
+ // materials.
+ string type = 1;
+ // Index in materials containing the recipe steps that are not implied by
+ // recipe.type. For example, if the recipe type were "make", then this would
+ // point to the source containing the Makefile, not the make program itself.
+ // Set to -1 if the recipe doesn't come from a material, as zero is default
+ // unset value for int64.
+ int64 defined_in_material = 2;
+ // String identifying the entry point into the build.
+ // This is often a path to a configuration file and/or a target label within
+ // that file. The syntax and meaning are defined by recipe.type. For
+ // example, if the recipe type were "make", then this would reference the
+ // directory in which to run make as well as which target to use.
+ string entry_point = 3;
+ // Collection of all external inputs that influenced the build on top of
+ // recipe.definedInMaterial and recipe.entryPoint. For example, if the
+ // recipe type were "make", then this might be the flags passed to make
+ // aside from the target, which is captured in recipe.entryPoint. Depending
+ // on the recipe Type, the structure may be different.
+ google.protobuf.Any arguments = 4;
+ // Any other builder-controlled inputs necessary for correctly evaluating
+ // the recipe. Usually only needed for reproducing the build but not
+ // evaluated as part of policy. Depending on the recipe Type, the structure
+ // may be different.
+ google.protobuf.Any environment = 5;
+ }
+
+ // Indicates that the builder claims certain fields in this message to be
+ // complete.
+ message SlsaCompleteness {
+ // If true, the builder claims that recipe.arguments is complete, meaning
+ // that all external inputs are properly captured in the recipe.
+ bool arguments = 1;
+ // If true, the builder claims that recipe.environment is claimed to be
+ // complete.
+ bool environment = 2;
+ // If true, the builder claims that materials are complete, usually through
+ // some controls to prevent network access. Sometimes called "hermetic".
+ bool materials = 3;
+ }
+
+ // Other properties of the build.
+ message SlsaMetadata {
+ // Identifies the particular build invocation, which can be useful for
+ // finding associated logs or other ad-hoc analysis. The value SHOULD be
+ // globally unique, per in-toto Provenance spec.
+ string build_invocation_id = 1;
+ // The timestamp of when the build started.
+ google.protobuf.Timestamp build_started_on = 2;
+ // The timestamp of when the build completed.
+ google.protobuf.Timestamp build_finished_on = 3;
+ // Indicates that the builder claims certain fields in this message to be
+ // complete.
+ SlsaCompleteness completeness = 4;
+ // If true, the builder claims that running the recipe on materials will
+ // produce bit-for-bit identical output.
+ bool reproducible = 5;
+ }
+
+ message SlsaBuilder {
+ string id = 1;
+ }
+
+ message Material {
+ string uri = 1;
+ map digest = 2;
+ }
+
+ SlsaBuilder builder = 1; // required
+ // Identifies the configuration used for the build.
+ // When combined with materials, this SHOULD fully describe the build,
+ // such that re-running this recipe results in bit-for-bit identical output
+ // (if the build is reproducible).
+ SlsaRecipe recipe = 2; // required
+ SlsaMetadata metadata = 3;
+ // The collection of artifacts that influenced the build including sources,
+ // dependencies, build tools, base images, and so on. This is considered to be
+ // incomplete unless metadata.completeness.materials is true. Unset or null is
+ // equivalent to empty.
+ repeated Material materials = 4;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/slsa_provenance_zero_two.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/slsa_provenance_zero_two.proto
new file mode 100644
index 00000000000..11cdd1c0ba5
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/slsa_provenance_zero_two.proto
@@ -0,0 +1,82 @@
+// Copyright 2021 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+option java_outer_classname = "SlsaProvenanceZeroTwoProto";
+
+message SlsaProvenanceZeroTwo {
+ // See full explanation of fields at slsa.dev/provenance/v0.2.
+
+ // Identifies the entity that executed the recipe, which is trusted to have
+ // correctly performed the operation and populated this provenance.
+ message SlsaBuilder {
+ string id = 1;
+ }
+
+ // The collection of artifacts that influenced the build including sources,
+ // dependencies, build tools, base images, and so on.
+ message SlsaMaterial {
+ string uri = 1;
+ map digest = 2;
+ }
+
+ // Identifies the event that kicked off the build.
+ message SlsaInvocation {
+ SlsaConfigSource config_source = 1;
+ google.protobuf.Struct parameters = 2;
+ google.protobuf.Struct environment = 3;
+ }
+
+ // Describes where the config file that kicked off the build came from.
+ // This is effectively a pointer to the source where buildConfig came from.
+ message SlsaConfigSource {
+ string uri = 1;
+ map digest = 2;
+ string entry_point = 3;
+ }
+
+ // Other properties of the build.
+ message SlsaMetadata {
+ string build_invocation_id = 1;
+ google.protobuf.Timestamp build_started_on = 2;
+ google.protobuf.Timestamp build_finished_on = 3;
+ SlsaCompleteness completeness = 4;
+ bool reproducible = 5;
+ }
+
+ // Indicates that the builder claims certain fields in this message to be
+ // complete.
+ message SlsaCompleteness {
+ bool parameters = 1;
+ bool environment = 2;
+ bool materials = 3;
+ }
+
+ SlsaBuilder builder = 1;
+ string build_type = 2;
+ SlsaInvocation invocation = 3;
+ google.protobuf.Struct build_config = 4;
+ SlsaMetadata metadata = 5;
+ repeated SlsaMaterial materials = 6;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/upgrade.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/upgrade.proto
new file mode 100644
index 00000000000..89d38929919
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/upgrade.proto
@@ -0,0 +1,114 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/protobuf/timestamp.proto";
+import "grafeas/v1/package.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// An Upgrade Note represents a potential upgrade of a package to a given
+// version. For each package version combination (i.e. bash 4.0, bash 4.1,
+// bash 4.1.2), there will be an Upgrade Note. For Windows, windows_update field
+// represents the information related to the update.
+message UpgradeNote {
+ // Required for non-Windows OS. The package this Upgrade is for.
+ string package = 1;
+ // Required for non-Windows OS. The version of the package in machine + human
+ // readable form.
+ grafeas.v1.Version version = 2;
+ // Metadata about the upgrade for each specific operating system.
+ repeated UpgradeDistribution distributions = 3;
+ // Required for Windows OS. Represents the metadata about the Windows update.
+ WindowsUpdate windows_update = 4;
+}
+
+// The Upgrade Distribution represents metadata about the Upgrade for each
+// operating system (CPE). Some distributions have additional metadata around
+// updates, classifying them into various categories and severities.
+message UpgradeDistribution {
+ // Required - The specific operating system this metadata applies to. See
+ // https://cpe.mitre.org/specification/.
+ string cpe_uri = 1;
+ // The operating system classification of this Upgrade, as specified by the
+ // upstream operating system upgrade feed. For Windows the classification is
+ // one of the category_ids listed at
+ // https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ff357803(v=vs.85)
+ string classification = 2;
+ // The severity as specified by the upstream operating system.
+ string severity = 3;
+ // The cve tied to this Upgrade.
+ repeated string cve = 4;
+}
+
+// Windows Update represents the metadata about the update for the Windows
+// operating system. The fields in this message come from the Windows Update API
+// documented at
+// https://docs.microsoft.com/en-us/windows/win32/api/wuapi/nn-wuapi-iupdate.
+message WindowsUpdate {
+ // The unique identifier of the update.
+ message Identity {
+ // The revision independent identifier of the update.
+ string update_id = 1;
+ // The revision number of the update.
+ int32 revision = 2;
+ }
+ // Required - The unique identifier for the update.
+ Identity identity = 1;
+ // The localized title of the update.
+ string title = 2;
+ // The localized description of the update.
+ string description = 3;
+ // The category to which the update belongs.
+ message Category {
+ // The identifier of the category.
+ string category_id = 1;
+ // The localized name of the category.
+ string name = 2;
+ }
+ // The list of categories to which the update belongs.
+ repeated Category categories = 4;
+ // The Microsoft Knowledge Base article IDs that are associated with the
+ // update.
+ repeated string kb_article_ids = 5;
+ // The hyperlink to the support information for the update.
+ string support_url = 6;
+ // The last published timestamp of the update.
+ google.protobuf.Timestamp last_published_timestamp = 7;
+}
+
+// An Upgrade Occurrence represents that a specific resource_url could install a
+// specific upgrade. This presence is supplied via local sources (i.e. it is
+// present in the mirror and the running system has noticed its availability).
+// For Windows, both distribution and windows_update contain information for the
+// Windows update.
+message UpgradeOccurrence {
+ // Required for non-Windows OS. The package this Upgrade is for.
+ string package = 1;
+ // Required for non-Windows OS. The version of the package in a machine +
+ // human readable form.
+ grafeas.v1.Version parsed_version = 3;
+ // Metadata about the upgrade for available for the specific operating system
+ // for the resource_url. This allows efficient filtering, as well as
+ // making it easier to use the occurrence.
+ UpgradeDistribution distribution = 4;
+ // Required for Windows OS. Represents the metadata about the Windows update.
+ WindowsUpdate windows_update = 5;
+}
diff --git a/packages/google-devtools-containeranalysis/protos/grafeas/v1/vulnerability.proto b/packages/google-devtools-containeranalysis/protos/grafeas/v1/vulnerability.proto
new file mode 100644
index 00000000000..cea4558b144
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/grafeas/v1/vulnerability.proto
@@ -0,0 +1,251 @@
+// Copyright 2019 The Grafeas Authors. All rights reserved.
+//
+// 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 grafeas.v1;
+
+import "google/api/field_behavior.proto";
+import "google/protobuf/timestamp.proto";
+import "grafeas/v1/common.proto";
+import "grafeas/v1/cvss.proto";
+import "grafeas/v1/package.proto";
+import "grafeas/v1/severity.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
+option java_multiple_files = true;
+option java_package = "io.grafeas.v1";
+option objc_class_prefix = "GRA";
+
+// A security vulnerability that can be found in resources.
+message VulnerabilityNote {
+ // The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
+ // where 0 indicates low severity and 10 indicates high severity.
+ float cvss_score = 1;
+
+ // The note provider assigned severity of this vulnerability.
+ grafeas.v1.Severity severity = 2;
+
+ // Details of all known distros and packages affected by this vulnerability.
+ repeated Detail details = 3;
+
+ // A detail for a distro and package affected by this vulnerability and its
+ // associated fix (if one is available).
+ message Detail {
+ // The distro assigned severity of this vulnerability.
+ string severity_name = 1;
+
+ // A vendor-specific description of this vulnerability.
+ string description = 2;
+
+ // The type of package; whether native or non native (e.g., ruby gems,
+ // node.js packages, etc.).
+ string package_type = 3;
+
+ // Required. The [CPE URI](https://cpe.mitre.org/specification/) this
+ // vulnerability affects.
+ string affected_cpe_uri = 4;
+
+ // Required. The package this vulnerability affects.
+ string affected_package = 5;
+
+ // The version number at the start of an interval in which this
+ // vulnerability exists. A vulnerability can affect a package between
+ // version numbers that are disjoint sets of intervals (example:
+ // [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
+ // represented in its own Detail. If a specific affected version is provided
+ // by a vulnerability database, affected_version_start and
+ // affected_version_end will be the same in that Detail.
+ grafeas.v1.Version affected_version_start = 6;
+
+ // The version number at the end of an interval in which this vulnerability
+ // exists. A vulnerability can affect a package between version numbers
+ // that are disjoint sets of intervals (example: [1.0.0-1.1.0],
+ // [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
+ // own Detail. If a specific affected version is provided by a vulnerability
+ // database, affected_version_start and affected_version_end will be the
+ // same in that Detail.
+ grafeas.v1.Version affected_version_end = 7;
+
+ // The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
+ // to update to that contains a fix for this vulnerability. It is possible
+ // for this to be different from the affected_cpe_uri.
+ string fixed_cpe_uri = 8;
+
+ // The distro recommended package to update to that contains a fix for this
+ // vulnerability. It is possible for this to be different from the
+ // affected_package.
+ string fixed_package = 9;
+
+ // The distro recommended version to update to that contains a
+ // fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
+ // such version is yet available.
+ grafeas.v1.Version fixed_version = 10;
+
+ // Whether this detail is obsolete. Occurrences are expected not to point to
+ // obsolete details.
+ bool is_obsolete = 11;
+
+ // The time this information was last changed at the source. This is an
+ // upstream timestamp from the underlying information source - e.g. Ubuntu
+ // security tracker.
+ google.protobuf.Timestamp source_update_time = 12;
+
+ // The source from which the information in this Detail was obtained.
+ string source = 13;
+
+ // The name of the vendor of the product.
+ string vendor = 14;
+ }
+
+ // The full description of the CVSSv3 for this vulnerability.
+ CVSSv3 cvss_v3 = 4;
+
+ // Windows details get their own format because the information format and
+ // model don't match a normal detail. Specifically Windows updates are done as
+ // patches, thus Windows vulnerabilities really are a missing package, rather
+ // than a package being at an incorrect version.
+ repeated WindowsDetail windows_details = 5;
+
+ message WindowsDetail {
+ // Required. The [CPE URI](https://cpe.mitre.org/specification/) this
+ // vulnerability affects.
+ string cpe_uri = 1;
+
+ // Required. The name of this vulnerability.
+ string name = 2;
+
+ // The description of this vulnerability.
+ string description = 3;
+
+ // Required. The names of the KBs which have hotfixes to mitigate this
+ // vulnerability. Note that there may be multiple hotfixes (and thus
+ // multiple KBs) that mitigate a given vulnerability. Currently any listed
+ // KBs presence is considered a fix.
+ repeated KnowledgeBase fixing_kbs = 4;
+
+ message KnowledgeBase {
+ // The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
+ string name = 1;
+ // A link to the KB in the [Windows update catalog]
+ // (https://www.catalog.update.microsoft.com/).
+ string url = 2;
+ }
+ }
+
+ // The time this information was last changed at the source. This is an
+ // upstream timestamp from the underlying information source - e.g. Ubuntu
+ // security tracker.
+ google.protobuf.Timestamp source_update_time = 6;
+
+ // CVSS version used to populate cvss_score and severity.
+ grafeas.v1.CVSSVersion cvss_version = 7;
+
+ // Next free ID is 8.
+}
+
+// An occurrence of a severity vulnerability on a resource.
+message VulnerabilityOccurrence {
+ // The type of package; whether native or non native (e.g., ruby gems, node.js
+ // packages, etc.).
+ string type = 1;
+
+ // Output only. The note provider assigned severity of this vulnerability.
+ grafeas.v1.Severity severity = 2;
+
+ // Output only. The CVSS score of this vulnerability. CVSS score is on a
+ // scale of 0 - 10 where 0 indicates low severity and 10 indicates high
+ // severity.
+ float cvss_score = 3;
+
+ // The cvss v3 score for the vulnerability.
+ CVSS cvssv3 = 10;
+
+ // Required. The set of affected locations and their fixes (if available)
+ // within the associated resource.
+ repeated PackageIssue package_issue = 4;
+
+ // A detail for a distro and package this vulnerability occurrence was found
+ // in and its associated fix (if one is available).
+ message PackageIssue {
+ // Required. The [CPE URI](https://cpe.mitre.org/specification/) this
+ // vulnerability was found in.
+ string affected_cpe_uri = 1;
+
+ // Required. The package this vulnerability was found in.
+ string affected_package = 2;
+
+ // Required. The version of the package that is installed on the resource
+ // affected by this vulnerability.
+ grafeas.v1.Version affected_version = 3;
+
+ // The [CPE URI](https://cpe.mitre.org/specification/) this vulnerability
+ // was fixed in. It is possible for this to be different from the
+ // affected_cpe_uri.
+ string fixed_cpe_uri = 4;
+
+ // The package this vulnerability was fixed in. It is possible for this to
+ // be different from the affected_package.
+ string fixed_package = 5;
+
+ // Required. The version of the package this vulnerability was fixed in.
+ // Setting this to VersionKind.MAXIMUM means no fix is yet available.
+ grafeas.v1.Version fixed_version = 6;
+
+ // Output only. Whether a fix is available for this package.
+ bool fix_available = 7;
+
+ // The type of package (e.g. OS, MAVEN, GO).
+ string package_type = 8;
+
+ // The distro or language system assigned severity for this vulnerability
+ // when that is available and note provider assigned severity when it is not
+ // available.
+ grafeas.v1.Severity effective_severity = 9
+ [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The location at which this package was found.
+ repeated FileLocation file_location = 10;
+ }
+
+ // Output only. A one sentence description of this vulnerability.
+ string short_description = 5;
+
+ // Output only. A detailed description of this vulnerability.
+ string long_description = 6;
+
+ // Output only. URLs related to this vulnerability.
+ repeated grafeas.v1.RelatedUrl related_urls = 7;
+
+ // The distro assigned severity for this vulnerability when it is available,
+ // otherwise this is the note provider assigned severity.
+ //
+ // When there are multiple PackageIssues for this vulnerability, they can have
+ // different effective severities because some might be provided by the distro
+ // while others are provided by the language ecosystem for a language pack.
+ // For this reason, it is advised to use the effective severity on the
+ // PackageIssue level. In the case where multiple PackageIssues have differing
+ // effective severities, this field should be the highest severity for any of
+ // the PackageIssues.
+ grafeas.v1.Severity effective_severity = 8;
+
+ // Output only. Whether at least one of the affected packages has a fix
+ // available.
+ bool fix_available = 9;
+
+ // Output only. CVSS version used to populate cvss_score and severity.
+ grafeas.v1.CVSSVersion cvss_version = 11;
+
+ // Next free ID is 12.
+}
diff --git a/packages/google-devtools-containeranalysis/protos/protos.d.ts b/packages/google-devtools-containeranalysis/protos/protos.d.ts
new file mode 100644
index 00000000000..b97e3a241e5
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/protos.d.ts
@@ -0,0 +1,28606 @@
+// 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 grafeas. */
+export namespace grafeas {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Severity enum. */
+ enum Severity {
+ SEVERITY_UNSPECIFIED = 0,
+ MINIMAL = 1,
+ LOW = 2,
+ MEDIUM = 3,
+ HIGH = 4,
+ CRITICAL = 5
+ }
+
+ /** Properties of an AttestationNote. */
+ interface IAttestationNote {
+
+ /** AttestationNote hint */
+ hint?: (grafeas.v1.AttestationNote.IHint|null);
+ }
+
+ /** Represents an AttestationNote. */
+ class AttestationNote implements IAttestationNote {
+
+ /**
+ * Constructs a new AttestationNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IAttestationNote);
+
+ /** AttestationNote hint. */
+ public hint?: (grafeas.v1.AttestationNote.IHint|null);
+
+ /**
+ * Creates a new AttestationNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AttestationNote instance
+ */
+ public static create(properties?: grafeas.v1.IAttestationNote): grafeas.v1.AttestationNote;
+
+ /**
+ * Encodes the specified AttestationNote message. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages.
+ * @param message AttestationNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IAttestationNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AttestationNote message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages.
+ * @param message AttestationNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IAttestationNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AttestationNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AttestationNote
+ * @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): grafeas.v1.AttestationNote;
+
+ /**
+ * Decodes an AttestationNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AttestationNote
+ * @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)): grafeas.v1.AttestationNote;
+
+ /**
+ * Verifies an AttestationNote 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 AttestationNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AttestationNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.AttestationNote;
+
+ /**
+ * Creates a plain object from an AttestationNote message. Also converts values to other types if specified.
+ * @param message AttestationNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.AttestationNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AttestationNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AttestationNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AttestationNote {
+
+ /** Properties of a Hint. */
+ interface IHint {
+
+ /** Hint humanReadableName */
+ humanReadableName?: (string|null);
+ }
+
+ /** Represents a Hint. */
+ class Hint implements IHint {
+
+ /**
+ * Constructs a new Hint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.AttestationNote.IHint);
+
+ /** Hint humanReadableName. */
+ public humanReadableName: string;
+
+ /**
+ * Creates a new Hint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Hint instance
+ */
+ public static create(properties?: grafeas.v1.AttestationNote.IHint): grafeas.v1.AttestationNote.Hint;
+
+ /**
+ * Encodes the specified Hint message. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages.
+ * @param message Hint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.AttestationNote.IHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Hint message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages.
+ * @param message Hint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.AttestationNote.IHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Hint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Hint
+ * @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): grafeas.v1.AttestationNote.Hint;
+
+ /**
+ * Decodes a Hint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Hint
+ * @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)): grafeas.v1.AttestationNote.Hint;
+
+ /**
+ * Verifies a Hint 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 Hint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Hint
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.AttestationNote.Hint;
+
+ /**
+ * Creates a plain object from a Hint message. Also converts values to other types if specified.
+ * @param message Hint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.AttestationNote.Hint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Hint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Hint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Jwt. */
+ interface IJwt {
+
+ /** Jwt compactJwt */
+ compactJwt?: (string|null);
+ }
+
+ /** Represents a Jwt. */
+ class Jwt implements IJwt {
+
+ /**
+ * Constructs a new Jwt.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IJwt);
+
+ /** Jwt compactJwt. */
+ public compactJwt: string;
+
+ /**
+ * Creates a new Jwt instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Jwt instance
+ */
+ public static create(properties?: grafeas.v1.IJwt): grafeas.v1.Jwt;
+
+ /**
+ * Encodes the specified Jwt message. Does not implicitly {@link grafeas.v1.Jwt.verify|verify} messages.
+ * @param message Jwt message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IJwt, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Jwt message, length delimited. Does not implicitly {@link grafeas.v1.Jwt.verify|verify} messages.
+ * @param message Jwt message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IJwt, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Jwt message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Jwt
+ * @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): grafeas.v1.Jwt;
+
+ /**
+ * Decodes a Jwt message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Jwt
+ * @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)): grafeas.v1.Jwt;
+
+ /**
+ * Verifies a Jwt 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 Jwt message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Jwt
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Jwt;
+
+ /**
+ * Creates a plain object from a Jwt message. Also converts values to other types if specified.
+ * @param message Jwt
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Jwt, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Jwt to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Jwt
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AttestationOccurrence. */
+ interface IAttestationOccurrence {
+
+ /** AttestationOccurrence serializedPayload */
+ serializedPayload?: (Uint8Array|string|null);
+
+ /** AttestationOccurrence signatures */
+ signatures?: (grafeas.v1.ISignature[]|null);
+
+ /** AttestationOccurrence jwts */
+ jwts?: (grafeas.v1.IJwt[]|null);
+ }
+
+ /** Represents an AttestationOccurrence. */
+ class AttestationOccurrence implements IAttestationOccurrence {
+
+ /**
+ * Constructs a new AttestationOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IAttestationOccurrence);
+
+ /** AttestationOccurrence serializedPayload. */
+ public serializedPayload: (Uint8Array|string);
+
+ /** AttestationOccurrence signatures. */
+ public signatures: grafeas.v1.ISignature[];
+
+ /** AttestationOccurrence jwts. */
+ public jwts: grafeas.v1.IJwt[];
+
+ /**
+ * Creates a new AttestationOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AttestationOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IAttestationOccurrence): grafeas.v1.AttestationOccurrence;
+
+ /**
+ * Encodes the specified AttestationOccurrence message. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages.
+ * @param message AttestationOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IAttestationOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AttestationOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages.
+ * @param message AttestationOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IAttestationOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AttestationOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AttestationOccurrence
+ * @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): grafeas.v1.AttestationOccurrence;
+
+ /**
+ * Decodes an AttestationOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AttestationOccurrence
+ * @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)): grafeas.v1.AttestationOccurrence;
+
+ /**
+ * Verifies an AttestationOccurrence 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 AttestationOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AttestationOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.AttestationOccurrence;
+
+ /**
+ * Creates a plain object from an AttestationOccurrence message. Also converts values to other types if specified.
+ * @param message AttestationOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.AttestationOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AttestationOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AttestationOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** NoteKind enum. */
+ enum NoteKind {
+ NOTE_KIND_UNSPECIFIED = 0,
+ VULNERABILITY = 1,
+ BUILD = 2,
+ IMAGE = 3,
+ PACKAGE = 4,
+ DEPLOYMENT = 5,
+ DISCOVERY = 6,
+ ATTESTATION = 7,
+ UPGRADE = 8,
+ COMPLIANCE = 9,
+ DSSE_ATTESTATION = 10
+ }
+
+ /** Properties of a RelatedUrl. */
+ interface IRelatedUrl {
+
+ /** RelatedUrl url */
+ url?: (string|null);
+
+ /** RelatedUrl label */
+ label?: (string|null);
+ }
+
+ /** Represents a RelatedUrl. */
+ class RelatedUrl implements IRelatedUrl {
+
+ /**
+ * Constructs a new RelatedUrl.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IRelatedUrl);
+
+ /** RelatedUrl url. */
+ public url: string;
+
+ /** RelatedUrl label. */
+ public label: string;
+
+ /**
+ * Creates a new RelatedUrl instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RelatedUrl instance
+ */
+ public static create(properties?: grafeas.v1.IRelatedUrl): grafeas.v1.RelatedUrl;
+
+ /**
+ * Encodes the specified RelatedUrl message. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages.
+ * @param message RelatedUrl message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IRelatedUrl, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RelatedUrl message, length delimited. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages.
+ * @param message RelatedUrl message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IRelatedUrl, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RelatedUrl message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RelatedUrl
+ * @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): grafeas.v1.RelatedUrl;
+
+ /**
+ * Decodes a RelatedUrl message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RelatedUrl
+ * @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)): grafeas.v1.RelatedUrl;
+
+ /**
+ * Verifies a RelatedUrl 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 RelatedUrl message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RelatedUrl
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.RelatedUrl;
+
+ /**
+ * Creates a plain object from a RelatedUrl message. Also converts values to other types if specified.
+ * @param message RelatedUrl
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.RelatedUrl, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RelatedUrl to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RelatedUrl
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Signature. */
+ interface ISignature {
+
+ /** Signature signature */
+ signature?: (Uint8Array|string|null);
+
+ /** Signature publicKeyId */
+ publicKeyId?: (string|null);
+ }
+
+ /** Represents a Signature. */
+ class Signature implements ISignature {
+
+ /**
+ * Constructs a new Signature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ISignature);
+
+ /** Signature signature. */
+ public signature: (Uint8Array|string);
+
+ /** Signature publicKeyId. */
+ public publicKeyId: string;
+
+ /**
+ * Creates a new Signature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Signature instance
+ */
+ public static create(properties?: grafeas.v1.ISignature): grafeas.v1.Signature;
+
+ /**
+ * Encodes the specified Signature message. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages.
+ * @param message Signature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ISignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Signature message, length delimited. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages.
+ * @param message Signature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ISignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Signature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Signature
+ * @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): grafeas.v1.Signature;
+
+ /**
+ * Decodes a Signature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Signature
+ * @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)): grafeas.v1.Signature;
+
+ /**
+ * Verifies a Signature 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 Signature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Signature
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Signature;
+
+ /**
+ * Creates a plain object from a Signature message. Also converts values to other types if specified.
+ * @param message Signature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Signature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Signature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Signature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Envelope. */
+ interface IEnvelope {
+
+ /** Envelope payload */
+ payload?: (Uint8Array|string|null);
+
+ /** Envelope payloadType */
+ payloadType?: (string|null);
+
+ /** Envelope signatures */
+ signatures?: (grafeas.v1.IEnvelopeSignature[]|null);
+ }
+
+ /** Represents an Envelope. */
+ class Envelope implements IEnvelope {
+
+ /**
+ * Constructs a new Envelope.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IEnvelope);
+
+ /** Envelope payload. */
+ public payload: (Uint8Array|string);
+
+ /** Envelope payloadType. */
+ public payloadType: string;
+
+ /** Envelope signatures. */
+ public signatures: grafeas.v1.IEnvelopeSignature[];
+
+ /**
+ * Creates a new Envelope instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Envelope instance
+ */
+ public static create(properties?: grafeas.v1.IEnvelope): grafeas.v1.Envelope;
+
+ /**
+ * Encodes the specified Envelope message. Does not implicitly {@link grafeas.v1.Envelope.verify|verify} messages.
+ * @param message Envelope message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IEnvelope, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Envelope message, length delimited. Does not implicitly {@link grafeas.v1.Envelope.verify|verify} messages.
+ * @param message Envelope message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IEnvelope, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Envelope message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Envelope
+ * @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): grafeas.v1.Envelope;
+
+ /**
+ * Decodes an Envelope message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Envelope
+ * @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)): grafeas.v1.Envelope;
+
+ /**
+ * Verifies an Envelope 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 Envelope message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Envelope
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Envelope;
+
+ /**
+ * Creates a plain object from an Envelope message. Also converts values to other types if specified.
+ * @param message Envelope
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Envelope, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Envelope to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Envelope
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnvelopeSignature. */
+ interface IEnvelopeSignature {
+
+ /** EnvelopeSignature sig */
+ sig?: (Uint8Array|string|null);
+
+ /** EnvelopeSignature keyid */
+ keyid?: (string|null);
+ }
+
+ /** Represents an EnvelopeSignature. */
+ class EnvelopeSignature implements IEnvelopeSignature {
+
+ /**
+ * Constructs a new EnvelopeSignature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IEnvelopeSignature);
+
+ /** EnvelopeSignature sig. */
+ public sig: (Uint8Array|string);
+
+ /** EnvelopeSignature keyid. */
+ public keyid: string;
+
+ /**
+ * Creates a new EnvelopeSignature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnvelopeSignature instance
+ */
+ public static create(properties?: grafeas.v1.IEnvelopeSignature): grafeas.v1.EnvelopeSignature;
+
+ /**
+ * Encodes the specified EnvelopeSignature message. Does not implicitly {@link grafeas.v1.EnvelopeSignature.verify|verify} messages.
+ * @param message EnvelopeSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IEnvelopeSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnvelopeSignature message, length delimited. Does not implicitly {@link grafeas.v1.EnvelopeSignature.verify|verify} messages.
+ * @param message EnvelopeSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IEnvelopeSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnvelopeSignature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnvelopeSignature
+ * @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): grafeas.v1.EnvelopeSignature;
+
+ /**
+ * Decodes an EnvelopeSignature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnvelopeSignature
+ * @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)): grafeas.v1.EnvelopeSignature;
+
+ /**
+ * Verifies an EnvelopeSignature 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 EnvelopeSignature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnvelopeSignature
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.EnvelopeSignature;
+
+ /**
+ * Creates a plain object from an EnvelopeSignature message. Also converts values to other types if specified.
+ * @param message EnvelopeSignature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.EnvelopeSignature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnvelopeSignature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnvelopeSignature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileLocation. */
+ interface IFileLocation {
+
+ /** FileLocation filePath */
+ filePath?: (string|null);
+ }
+
+ /** Represents a FileLocation. */
+ class FileLocation implements IFileLocation {
+
+ /**
+ * Constructs a new FileLocation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IFileLocation);
+
+ /** FileLocation filePath. */
+ public filePath: string;
+
+ /**
+ * Creates a new FileLocation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileLocation instance
+ */
+ public static create(properties?: grafeas.v1.IFileLocation): grafeas.v1.FileLocation;
+
+ /**
+ * Encodes the specified FileLocation message. Does not implicitly {@link grafeas.v1.FileLocation.verify|verify} messages.
+ * @param message FileLocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IFileLocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileLocation message, length delimited. Does not implicitly {@link grafeas.v1.FileLocation.verify|verify} messages.
+ * @param message FileLocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IFileLocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileLocation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileLocation
+ * @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): grafeas.v1.FileLocation;
+
+ /**
+ * Decodes a FileLocation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileLocation
+ * @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)): grafeas.v1.FileLocation;
+
+ /**
+ * Verifies a FileLocation 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 FileLocation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileLocation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.FileLocation;
+
+ /**
+ * Creates a plain object from a FileLocation message. Also converts values to other types if specified.
+ * @param message FileLocation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.FileLocation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileLocation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileLocation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a License. */
+ interface ILicense {
+
+ /** License expression */
+ expression?: (string|null);
+
+ /** License comments */
+ comments?: (string|null);
+ }
+
+ /** Represents a License. */
+ class License implements ILicense {
+
+ /**
+ * Constructs a new License.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ILicense);
+
+ /** License expression. */
+ public expression: string;
+
+ /** License comments. */
+ public comments: string;
+
+ /**
+ * Creates a new License instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns License instance
+ */
+ public static create(properties?: grafeas.v1.ILicense): grafeas.v1.License;
+
+ /**
+ * Encodes the specified License message. Does not implicitly {@link grafeas.v1.License.verify|verify} messages.
+ * @param message License message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ILicense, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified License message, length delimited. Does not implicitly {@link grafeas.v1.License.verify|verify} messages.
+ * @param message License message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ILicense, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a License message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns License
+ * @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): grafeas.v1.License;
+
+ /**
+ * Decodes a License message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns License
+ * @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)): grafeas.v1.License;
+
+ /**
+ * Verifies a License 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 License message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns License
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.License;
+
+ /**
+ * Creates a plain object from a License message. Also converts values to other types if specified.
+ * @param message License
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.License, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this License to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for License
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Digest. */
+ interface IDigest {
+
+ /** Digest algo */
+ algo?: (string|null);
+
+ /** Digest digestBytes */
+ digestBytes?: (Uint8Array|string|null);
+ }
+
+ /** Represents a Digest. */
+ class Digest implements IDigest {
+
+ /**
+ * Constructs a new Digest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDigest);
+
+ /** Digest algo. */
+ public algo: string;
+
+ /** Digest digestBytes. */
+ public digestBytes: (Uint8Array|string);
+
+ /**
+ * Creates a new Digest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Digest instance
+ */
+ public static create(properties?: grafeas.v1.IDigest): grafeas.v1.Digest;
+
+ /**
+ * Encodes the specified Digest message. Does not implicitly {@link grafeas.v1.Digest.verify|verify} messages.
+ * @param message Digest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDigest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Digest message, length delimited. Does not implicitly {@link grafeas.v1.Digest.verify|verify} messages.
+ * @param message Digest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDigest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Digest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Digest
+ * @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): grafeas.v1.Digest;
+
+ /**
+ * Decodes a Digest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Digest
+ * @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)): grafeas.v1.Digest;
+
+ /**
+ * Verifies a Digest 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 Digest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Digest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Digest;
+
+ /**
+ * Creates a plain object from a Digest message. Also converts values to other types if specified.
+ * @param message Digest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Digest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Digest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Digest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BuildNote. */
+ interface IBuildNote {
+
+ /** BuildNote builderVersion */
+ builderVersion?: (string|null);
+ }
+
+ /** Represents a BuildNote. */
+ class BuildNote implements IBuildNote {
+
+ /**
+ * Constructs a new BuildNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBuildNote);
+
+ /** BuildNote builderVersion. */
+ public builderVersion: string;
+
+ /**
+ * Creates a new BuildNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BuildNote instance
+ */
+ public static create(properties?: grafeas.v1.IBuildNote): grafeas.v1.BuildNote;
+
+ /**
+ * Encodes the specified BuildNote message. Does not implicitly {@link grafeas.v1.BuildNote.verify|verify} messages.
+ * @param message BuildNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBuildNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BuildNote message, length delimited. Does not implicitly {@link grafeas.v1.BuildNote.verify|verify} messages.
+ * @param message BuildNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBuildNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BuildNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BuildNote
+ * @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): grafeas.v1.BuildNote;
+
+ /**
+ * Decodes a BuildNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BuildNote
+ * @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)): grafeas.v1.BuildNote;
+
+ /**
+ * Verifies a BuildNote 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 BuildNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BuildNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BuildNote;
+
+ /**
+ * Creates a plain object from a BuildNote message. Also converts values to other types if specified.
+ * @param message BuildNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BuildNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BuildNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BuildNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BuildOccurrence. */
+ interface IBuildOccurrence {
+
+ /** BuildOccurrence provenance */
+ provenance?: (grafeas.v1.IBuildProvenance|null);
+
+ /** BuildOccurrence provenanceBytes */
+ provenanceBytes?: (string|null);
+
+ /** BuildOccurrence intotoProvenance */
+ intotoProvenance?: (grafeas.v1.IInTotoProvenance|null);
+
+ /** BuildOccurrence intotoStatement */
+ intotoStatement?: (grafeas.v1.IInTotoStatement|null);
+ }
+
+ /** Represents a BuildOccurrence. */
+ class BuildOccurrence implements IBuildOccurrence {
+
+ /**
+ * Constructs a new BuildOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBuildOccurrence);
+
+ /** BuildOccurrence provenance. */
+ public provenance?: (grafeas.v1.IBuildProvenance|null);
+
+ /** BuildOccurrence provenanceBytes. */
+ public provenanceBytes: string;
+
+ /** BuildOccurrence intotoProvenance. */
+ public intotoProvenance?: (grafeas.v1.IInTotoProvenance|null);
+
+ /** BuildOccurrence intotoStatement. */
+ public intotoStatement?: (grafeas.v1.IInTotoStatement|null);
+
+ /**
+ * Creates a new BuildOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BuildOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IBuildOccurrence): grafeas.v1.BuildOccurrence;
+
+ /**
+ * Encodes the specified BuildOccurrence message. Does not implicitly {@link grafeas.v1.BuildOccurrence.verify|verify} messages.
+ * @param message BuildOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBuildOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BuildOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.BuildOccurrence.verify|verify} messages.
+ * @param message BuildOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBuildOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BuildOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BuildOccurrence
+ * @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): grafeas.v1.BuildOccurrence;
+
+ /**
+ * Decodes a BuildOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BuildOccurrence
+ * @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)): grafeas.v1.BuildOccurrence;
+
+ /**
+ * Verifies a BuildOccurrence 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 BuildOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BuildOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BuildOccurrence;
+
+ /**
+ * Creates a plain object from a BuildOccurrence message. Also converts values to other types if specified.
+ * @param message BuildOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BuildOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BuildOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BuildOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Recipe. */
+ interface IRecipe {
+
+ /** Recipe type */
+ type?: (string|null);
+
+ /** Recipe definedInMaterial */
+ definedInMaterial?: (number|Long|string|null);
+
+ /** Recipe entryPoint */
+ entryPoint?: (string|null);
+
+ /** Recipe arguments */
+ "arguments"?: (google.protobuf.IAny[]|null);
+
+ /** Recipe environment */
+ environment?: (google.protobuf.IAny[]|null);
+ }
+
+ /** Represents a Recipe. */
+ class Recipe implements IRecipe {
+
+ /**
+ * Constructs a new Recipe.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IRecipe);
+
+ /** Recipe type. */
+ public type: string;
+
+ /** Recipe definedInMaterial. */
+ public definedInMaterial: (number|Long|string);
+
+ /** Recipe entryPoint. */
+ public entryPoint: string;
+
+ /** Recipe arguments. */
+ public arguments: google.protobuf.IAny[];
+
+ /** Recipe environment. */
+ public environment: google.protobuf.IAny[];
+
+ /**
+ * Creates a new Recipe instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Recipe instance
+ */
+ public static create(properties?: grafeas.v1.IRecipe): grafeas.v1.Recipe;
+
+ /**
+ * Encodes the specified Recipe message. Does not implicitly {@link grafeas.v1.Recipe.verify|verify} messages.
+ * @param message Recipe message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IRecipe, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Recipe message, length delimited. Does not implicitly {@link grafeas.v1.Recipe.verify|verify} messages.
+ * @param message Recipe message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IRecipe, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Recipe message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Recipe
+ * @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): grafeas.v1.Recipe;
+
+ /**
+ * Decodes a Recipe message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Recipe
+ * @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)): grafeas.v1.Recipe;
+
+ /**
+ * Verifies a Recipe 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 Recipe message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Recipe
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Recipe;
+
+ /**
+ * Creates a plain object from a Recipe message. Also converts values to other types if specified.
+ * @param message Recipe
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Recipe, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Recipe to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Recipe
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Completeness. */
+ interface ICompleteness {
+
+ /** Completeness arguments */
+ "arguments"?: (boolean|null);
+
+ /** Completeness environment */
+ environment?: (boolean|null);
+
+ /** Completeness materials */
+ materials?: (boolean|null);
+ }
+
+ /** Represents a Completeness. */
+ class Completeness implements ICompleteness {
+
+ /**
+ * Constructs a new Completeness.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICompleteness);
+
+ /** Completeness arguments. */
+ public arguments: boolean;
+
+ /** Completeness environment. */
+ public environment: boolean;
+
+ /** Completeness materials. */
+ public materials: boolean;
+
+ /**
+ * Creates a new Completeness instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Completeness instance
+ */
+ public static create(properties?: grafeas.v1.ICompleteness): grafeas.v1.Completeness;
+
+ /**
+ * Encodes the specified Completeness message. Does not implicitly {@link grafeas.v1.Completeness.verify|verify} messages.
+ * @param message Completeness message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ICompleteness, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Completeness message, length delimited. Does not implicitly {@link grafeas.v1.Completeness.verify|verify} messages.
+ * @param message Completeness message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ICompleteness, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Completeness message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Completeness
+ * @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): grafeas.v1.Completeness;
+
+ /**
+ * Decodes a Completeness message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Completeness
+ * @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)): grafeas.v1.Completeness;
+
+ /**
+ * Verifies a Completeness 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 Completeness message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Completeness
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Completeness;
+
+ /**
+ * Creates a plain object from a Completeness message. Also converts values to other types if specified.
+ * @param message Completeness
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Completeness, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Completeness to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Completeness
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Metadata. */
+ interface IMetadata {
+
+ /** Metadata buildInvocationId */
+ buildInvocationId?: (string|null);
+
+ /** Metadata buildStartedOn */
+ buildStartedOn?: (google.protobuf.ITimestamp|null);
+
+ /** Metadata buildFinishedOn */
+ buildFinishedOn?: (google.protobuf.ITimestamp|null);
+
+ /** Metadata completeness */
+ completeness?: (grafeas.v1.ICompleteness|null);
+
+ /** Metadata reproducible */
+ reproducible?: (boolean|null);
+ }
+
+ /** Represents a Metadata. */
+ class Metadata implements IMetadata {
+
+ /**
+ * Constructs a new Metadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IMetadata);
+
+ /** Metadata buildInvocationId. */
+ public buildInvocationId: string;
+
+ /** Metadata buildStartedOn. */
+ public buildStartedOn?: (google.protobuf.ITimestamp|null);
+
+ /** Metadata buildFinishedOn. */
+ public buildFinishedOn?: (google.protobuf.ITimestamp|null);
+
+ /** Metadata completeness. */
+ public completeness?: (grafeas.v1.ICompleteness|null);
+
+ /** Metadata reproducible. */
+ public reproducible: boolean;
+
+ /**
+ * Creates a new Metadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Metadata instance
+ */
+ public static create(properties?: grafeas.v1.IMetadata): grafeas.v1.Metadata;
+
+ /**
+ * Encodes the specified Metadata message. Does not implicitly {@link grafeas.v1.Metadata.verify|verify} messages.
+ * @param message Metadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Metadata message, length delimited. Does not implicitly {@link grafeas.v1.Metadata.verify|verify} messages.
+ * @param message Metadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Metadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Metadata
+ * @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): grafeas.v1.Metadata;
+
+ /**
+ * Decodes a Metadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Metadata
+ * @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)): grafeas.v1.Metadata;
+
+ /**
+ * Verifies a Metadata 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 Metadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Metadata
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Metadata;
+
+ /**
+ * Creates a plain object from a Metadata message. Also converts values to other types if specified.
+ * @param message Metadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Metadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Metadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Metadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BuilderConfig. */
+ interface IBuilderConfig {
+
+ /** BuilderConfig id */
+ id?: (string|null);
+ }
+
+ /** Represents a BuilderConfig. */
+ class BuilderConfig implements IBuilderConfig {
+
+ /**
+ * Constructs a new BuilderConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBuilderConfig);
+
+ /** BuilderConfig id. */
+ public id: string;
+
+ /**
+ * Creates a new BuilderConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BuilderConfig instance
+ */
+ public static create(properties?: grafeas.v1.IBuilderConfig): grafeas.v1.BuilderConfig;
+
+ /**
+ * Encodes the specified BuilderConfig message. Does not implicitly {@link grafeas.v1.BuilderConfig.verify|verify} messages.
+ * @param message BuilderConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBuilderConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BuilderConfig message, length delimited. Does not implicitly {@link grafeas.v1.BuilderConfig.verify|verify} messages.
+ * @param message BuilderConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBuilderConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BuilderConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BuilderConfig
+ * @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): grafeas.v1.BuilderConfig;
+
+ /**
+ * Decodes a BuilderConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BuilderConfig
+ * @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)): grafeas.v1.BuilderConfig;
+
+ /**
+ * Verifies a BuilderConfig 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 BuilderConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BuilderConfig
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BuilderConfig;
+
+ /**
+ * Creates a plain object from a BuilderConfig message. Also converts values to other types if specified.
+ * @param message BuilderConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BuilderConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BuilderConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BuilderConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an InTotoProvenance. */
+ interface IInTotoProvenance {
+
+ /** InTotoProvenance builderConfig */
+ builderConfig?: (grafeas.v1.IBuilderConfig|null);
+
+ /** InTotoProvenance recipe */
+ recipe?: (grafeas.v1.IRecipe|null);
+
+ /** InTotoProvenance metadata */
+ metadata?: (grafeas.v1.IMetadata|null);
+
+ /** InTotoProvenance materials */
+ materials?: (string[]|null);
+ }
+
+ /** Represents an InTotoProvenance. */
+ class InTotoProvenance implements IInTotoProvenance {
+
+ /**
+ * Constructs a new InTotoProvenance.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IInTotoProvenance);
+
+ /** InTotoProvenance builderConfig. */
+ public builderConfig?: (grafeas.v1.IBuilderConfig|null);
+
+ /** InTotoProvenance recipe. */
+ public recipe?: (grafeas.v1.IRecipe|null);
+
+ /** InTotoProvenance metadata. */
+ public metadata?: (grafeas.v1.IMetadata|null);
+
+ /** InTotoProvenance materials. */
+ public materials: string[];
+
+ /**
+ * Creates a new InTotoProvenance instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns InTotoProvenance instance
+ */
+ public static create(properties?: grafeas.v1.IInTotoProvenance): grafeas.v1.InTotoProvenance;
+
+ /**
+ * Encodes the specified InTotoProvenance message. Does not implicitly {@link grafeas.v1.InTotoProvenance.verify|verify} messages.
+ * @param message InTotoProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IInTotoProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified InTotoProvenance message, length delimited. Does not implicitly {@link grafeas.v1.InTotoProvenance.verify|verify} messages.
+ * @param message InTotoProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IInTotoProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an InTotoProvenance message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns InTotoProvenance
+ * @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): grafeas.v1.InTotoProvenance;
+
+ /**
+ * Decodes an InTotoProvenance message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns InTotoProvenance
+ * @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)): grafeas.v1.InTotoProvenance;
+
+ /**
+ * Verifies an InTotoProvenance 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 InTotoProvenance message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns InTotoProvenance
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.InTotoProvenance;
+
+ /**
+ * Creates a plain object from an InTotoProvenance message. Also converts values to other types if specified.
+ * @param message InTotoProvenance
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.InTotoProvenance, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this InTotoProvenance to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for InTotoProvenance
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an InTotoStatement. */
+ interface IInTotoStatement {
+
+ /** InTotoStatement type */
+ type?: (string|null);
+
+ /** InTotoStatement subject */
+ subject?: (grafeas.v1.ISubject[]|null);
+
+ /** InTotoStatement predicateType */
+ predicateType?: (string|null);
+
+ /** InTotoStatement provenance */
+ provenance?: (grafeas.v1.IInTotoProvenance|null);
+
+ /** InTotoStatement slsaProvenance */
+ slsaProvenance?: (grafeas.v1.ISlsaProvenance|null);
+
+ /** InTotoStatement slsaProvenanceZeroTwo */
+ slsaProvenanceZeroTwo?: (grafeas.v1.ISlsaProvenanceZeroTwo|null);
+ }
+
+ /** Represents an InTotoStatement. */
+ class InTotoStatement implements IInTotoStatement {
+
+ /**
+ * Constructs a new InTotoStatement.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IInTotoStatement);
+
+ /** InTotoStatement type. */
+ public type: string;
+
+ /** InTotoStatement subject. */
+ public subject: grafeas.v1.ISubject[];
+
+ /** InTotoStatement predicateType. */
+ public predicateType: string;
+
+ /** InTotoStatement provenance. */
+ public provenance?: (grafeas.v1.IInTotoProvenance|null);
+
+ /** InTotoStatement slsaProvenance. */
+ public slsaProvenance?: (grafeas.v1.ISlsaProvenance|null);
+
+ /** InTotoStatement slsaProvenanceZeroTwo. */
+ public slsaProvenanceZeroTwo?: (grafeas.v1.ISlsaProvenanceZeroTwo|null);
+
+ /** InTotoStatement predicate. */
+ public predicate?: ("provenance"|"slsaProvenance"|"slsaProvenanceZeroTwo");
+
+ /**
+ * Creates a new InTotoStatement instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns InTotoStatement instance
+ */
+ public static create(properties?: grafeas.v1.IInTotoStatement): grafeas.v1.InTotoStatement;
+
+ /**
+ * Encodes the specified InTotoStatement message. Does not implicitly {@link grafeas.v1.InTotoStatement.verify|verify} messages.
+ * @param message InTotoStatement message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IInTotoStatement, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified InTotoStatement message, length delimited. Does not implicitly {@link grafeas.v1.InTotoStatement.verify|verify} messages.
+ * @param message InTotoStatement message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IInTotoStatement, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an InTotoStatement message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns InTotoStatement
+ * @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): grafeas.v1.InTotoStatement;
+
+ /**
+ * Decodes an InTotoStatement message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns InTotoStatement
+ * @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)): grafeas.v1.InTotoStatement;
+
+ /**
+ * Verifies an InTotoStatement 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 InTotoStatement message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns InTotoStatement
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.InTotoStatement;
+
+ /**
+ * Creates a plain object from an InTotoStatement message. Also converts values to other types if specified.
+ * @param message InTotoStatement
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.InTotoStatement, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this InTotoStatement to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for InTotoStatement
+ * @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 name */
+ name?: (string|null);
+
+ /** Subject digest */
+ digest?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a Subject. */
+ class Subject implements ISubject {
+
+ /**
+ * Constructs a new Subject.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ISubject);
+
+ /** Subject name. */
+ public name: string;
+
+ /** Subject digest. */
+ public digest: { [k: string]: string };
+
+ /**
+ * Creates a new Subject instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Subject instance
+ */
+ public static create(properties?: grafeas.v1.ISubject): grafeas.v1.Subject;
+
+ /**
+ * Encodes the specified Subject message. Does not implicitly {@link grafeas.v1.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: grafeas.v1.ISubject, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Subject message, length delimited. Does not implicitly {@link grafeas.v1.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: grafeas.v1.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): grafeas.v1.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)): grafeas.v1.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 }): grafeas.v1.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: grafeas.v1.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;
+ }
+
+ /** Properties of a SlsaProvenance. */
+ interface ISlsaProvenance {
+
+ /** SlsaProvenance builder */
+ builder?: (grafeas.v1.SlsaProvenance.ISlsaBuilder|null);
+
+ /** SlsaProvenance recipe */
+ recipe?: (grafeas.v1.SlsaProvenance.ISlsaRecipe|null);
+
+ /** SlsaProvenance metadata */
+ metadata?: (grafeas.v1.SlsaProvenance.ISlsaMetadata|null);
+
+ /** SlsaProvenance materials */
+ materials?: (grafeas.v1.SlsaProvenance.IMaterial[]|null);
+ }
+
+ /** Represents a SlsaProvenance. */
+ class SlsaProvenance implements ISlsaProvenance {
+
+ /**
+ * Constructs a new SlsaProvenance.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ISlsaProvenance);
+
+ /** SlsaProvenance builder. */
+ public builder?: (grafeas.v1.SlsaProvenance.ISlsaBuilder|null);
+
+ /** SlsaProvenance recipe. */
+ public recipe?: (grafeas.v1.SlsaProvenance.ISlsaRecipe|null);
+
+ /** SlsaProvenance metadata. */
+ public metadata?: (grafeas.v1.SlsaProvenance.ISlsaMetadata|null);
+
+ /** SlsaProvenance materials. */
+ public materials: grafeas.v1.SlsaProvenance.IMaterial[];
+
+ /**
+ * Creates a new SlsaProvenance instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaProvenance instance
+ */
+ public static create(properties?: grafeas.v1.ISlsaProvenance): grafeas.v1.SlsaProvenance;
+
+ /**
+ * Encodes the specified SlsaProvenance message. Does not implicitly {@link grafeas.v1.SlsaProvenance.verify|verify} messages.
+ * @param message SlsaProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ISlsaProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaProvenance message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.verify|verify} messages.
+ * @param message SlsaProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ISlsaProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaProvenance message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaProvenance
+ * @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): grafeas.v1.SlsaProvenance;
+
+ /**
+ * Decodes a SlsaProvenance message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaProvenance
+ * @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)): grafeas.v1.SlsaProvenance;
+
+ /**
+ * Verifies a SlsaProvenance 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 SlsaProvenance message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaProvenance
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenance;
+
+ /**
+ * Creates a plain object from a SlsaProvenance message. Also converts values to other types if specified.
+ * @param message SlsaProvenance
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenance, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaProvenance to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaProvenance
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SlsaProvenance {
+
+ /** Properties of a SlsaRecipe. */
+ interface ISlsaRecipe {
+
+ /** SlsaRecipe type */
+ type?: (string|null);
+
+ /** SlsaRecipe definedInMaterial */
+ definedInMaterial?: (number|Long|string|null);
+
+ /** SlsaRecipe entryPoint */
+ entryPoint?: (string|null);
+
+ /** SlsaRecipe arguments */
+ "arguments"?: (google.protobuf.IAny|null);
+
+ /** SlsaRecipe environment */
+ environment?: (google.protobuf.IAny|null);
+ }
+
+ /** Represents a SlsaRecipe. */
+ class SlsaRecipe implements ISlsaRecipe {
+
+ /**
+ * Constructs a new SlsaRecipe.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenance.ISlsaRecipe);
+
+ /** SlsaRecipe type. */
+ public type: string;
+
+ /** SlsaRecipe definedInMaterial. */
+ public definedInMaterial: (number|Long|string);
+
+ /** SlsaRecipe entryPoint. */
+ public entryPoint: string;
+
+ /** SlsaRecipe arguments. */
+ public arguments?: (google.protobuf.IAny|null);
+
+ /** SlsaRecipe environment. */
+ public environment?: (google.protobuf.IAny|null);
+
+ /**
+ * Creates a new SlsaRecipe instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaRecipe instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenance.ISlsaRecipe): grafeas.v1.SlsaProvenance.SlsaRecipe;
+
+ /**
+ * Encodes the specified SlsaRecipe message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaRecipe.verify|verify} messages.
+ * @param message SlsaRecipe message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenance.ISlsaRecipe, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaRecipe message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaRecipe.verify|verify} messages.
+ * @param message SlsaRecipe message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenance.ISlsaRecipe, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaRecipe message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaRecipe
+ * @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): grafeas.v1.SlsaProvenance.SlsaRecipe;
+
+ /**
+ * Decodes a SlsaRecipe message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaRecipe
+ * @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)): grafeas.v1.SlsaProvenance.SlsaRecipe;
+
+ /**
+ * Verifies a SlsaRecipe 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 SlsaRecipe message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaRecipe
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenance.SlsaRecipe;
+
+ /**
+ * Creates a plain object from a SlsaRecipe message. Also converts values to other types if specified.
+ * @param message SlsaRecipe
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenance.SlsaRecipe, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaRecipe to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaRecipe
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaCompleteness. */
+ interface ISlsaCompleteness {
+
+ /** SlsaCompleteness arguments */
+ "arguments"?: (boolean|null);
+
+ /** SlsaCompleteness environment */
+ environment?: (boolean|null);
+
+ /** SlsaCompleteness materials */
+ materials?: (boolean|null);
+ }
+
+ /** Represents a SlsaCompleteness. */
+ class SlsaCompleteness implements ISlsaCompleteness {
+
+ /**
+ * Constructs a new SlsaCompleteness.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenance.ISlsaCompleteness);
+
+ /** SlsaCompleteness arguments. */
+ public arguments: boolean;
+
+ /** SlsaCompleteness environment. */
+ public environment: boolean;
+
+ /** SlsaCompleteness materials. */
+ public materials: boolean;
+
+ /**
+ * Creates a new SlsaCompleteness instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaCompleteness instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenance.ISlsaCompleteness): grafeas.v1.SlsaProvenance.SlsaCompleteness;
+
+ /**
+ * Encodes the specified SlsaCompleteness message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaCompleteness.verify|verify} messages.
+ * @param message SlsaCompleteness message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenance.ISlsaCompleteness, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaCompleteness message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaCompleteness.verify|verify} messages.
+ * @param message SlsaCompleteness message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenance.ISlsaCompleteness, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaCompleteness
+ * @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): grafeas.v1.SlsaProvenance.SlsaCompleteness;
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaCompleteness
+ * @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)): grafeas.v1.SlsaProvenance.SlsaCompleteness;
+
+ /**
+ * Verifies a SlsaCompleteness 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 SlsaCompleteness message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaCompleteness
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenance.SlsaCompleteness;
+
+ /**
+ * Creates a plain object from a SlsaCompleteness message. Also converts values to other types if specified.
+ * @param message SlsaCompleteness
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenance.SlsaCompleteness, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaCompleteness to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaCompleteness
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaMetadata. */
+ interface ISlsaMetadata {
+
+ /** SlsaMetadata buildInvocationId */
+ buildInvocationId?: (string|null);
+
+ /** SlsaMetadata buildStartedOn */
+ buildStartedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata buildFinishedOn */
+ buildFinishedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata completeness */
+ completeness?: (grafeas.v1.SlsaProvenance.ISlsaCompleteness|null);
+
+ /** SlsaMetadata reproducible */
+ reproducible?: (boolean|null);
+ }
+
+ /** Represents a SlsaMetadata. */
+ class SlsaMetadata implements ISlsaMetadata {
+
+ /**
+ * Constructs a new SlsaMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenance.ISlsaMetadata);
+
+ /** SlsaMetadata buildInvocationId. */
+ public buildInvocationId: string;
+
+ /** SlsaMetadata buildStartedOn. */
+ public buildStartedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata buildFinishedOn. */
+ public buildFinishedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata completeness. */
+ public completeness?: (grafeas.v1.SlsaProvenance.ISlsaCompleteness|null);
+
+ /** SlsaMetadata reproducible. */
+ public reproducible: boolean;
+
+ /**
+ * Creates a new SlsaMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaMetadata instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenance.ISlsaMetadata): grafeas.v1.SlsaProvenance.SlsaMetadata;
+
+ /**
+ * Encodes the specified SlsaMetadata message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaMetadata.verify|verify} messages.
+ * @param message SlsaMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenance.ISlsaMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaMetadata message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaMetadata.verify|verify} messages.
+ * @param message SlsaMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenance.ISlsaMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaMetadata
+ * @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): grafeas.v1.SlsaProvenance.SlsaMetadata;
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaMetadata
+ * @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)): grafeas.v1.SlsaProvenance.SlsaMetadata;
+
+ /**
+ * Verifies a SlsaMetadata 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 SlsaMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenance.SlsaMetadata;
+
+ /**
+ * Creates a plain object from a SlsaMetadata message. Also converts values to other types if specified.
+ * @param message SlsaMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenance.SlsaMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaBuilder. */
+ interface ISlsaBuilder {
+
+ /** SlsaBuilder id */
+ id?: (string|null);
+ }
+
+ /** Represents a SlsaBuilder. */
+ class SlsaBuilder implements ISlsaBuilder {
+
+ /**
+ * Constructs a new SlsaBuilder.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenance.ISlsaBuilder);
+
+ /** SlsaBuilder id. */
+ public id: string;
+
+ /**
+ * Creates a new SlsaBuilder instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaBuilder instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenance.ISlsaBuilder): grafeas.v1.SlsaProvenance.SlsaBuilder;
+
+ /**
+ * Encodes the specified SlsaBuilder message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaBuilder.verify|verify} messages.
+ * @param message SlsaBuilder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenance.ISlsaBuilder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaBuilder message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaBuilder.verify|verify} messages.
+ * @param message SlsaBuilder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenance.ISlsaBuilder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaBuilder
+ * @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): grafeas.v1.SlsaProvenance.SlsaBuilder;
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaBuilder
+ * @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)): grafeas.v1.SlsaProvenance.SlsaBuilder;
+
+ /**
+ * Verifies a SlsaBuilder 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 SlsaBuilder message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaBuilder
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenance.SlsaBuilder;
+
+ /**
+ * Creates a plain object from a SlsaBuilder message. Also converts values to other types if specified.
+ * @param message SlsaBuilder
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenance.SlsaBuilder, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaBuilder to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaBuilder
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Material. */
+ interface IMaterial {
+
+ /** Material uri */
+ uri?: (string|null);
+
+ /** Material digest */
+ digest?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a Material. */
+ class Material implements IMaterial {
+
+ /**
+ * Constructs a new Material.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenance.IMaterial);
+
+ /** Material uri. */
+ public uri: string;
+
+ /** Material digest. */
+ public digest: { [k: string]: string };
+
+ /**
+ * Creates a new Material instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Material instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenance.IMaterial): grafeas.v1.SlsaProvenance.Material;
+
+ /**
+ * Encodes the specified Material message. Does not implicitly {@link grafeas.v1.SlsaProvenance.Material.verify|verify} messages.
+ * @param message Material message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenance.IMaterial, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Material message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.Material.verify|verify} messages.
+ * @param message Material message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenance.IMaterial, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Material message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Material
+ * @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): grafeas.v1.SlsaProvenance.Material;
+
+ /**
+ * Decodes a Material message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Material
+ * @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)): grafeas.v1.SlsaProvenance.Material;
+
+ /**
+ * Verifies a Material 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 Material message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Material
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenance.Material;
+
+ /**
+ * Creates a plain object from a Material message. Also converts values to other types if specified.
+ * @param message Material
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenance.Material, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Material to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Material
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a SlsaProvenanceZeroTwo. */
+ interface ISlsaProvenanceZeroTwo {
+
+ /** SlsaProvenanceZeroTwo builder */
+ builder?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder|null);
+
+ /** SlsaProvenanceZeroTwo buildType */
+ buildType?: (string|null);
+
+ /** SlsaProvenanceZeroTwo invocation */
+ invocation?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation|null);
+
+ /** SlsaProvenanceZeroTwo buildConfig */
+ buildConfig?: (google.protobuf.IStruct|null);
+
+ /** SlsaProvenanceZeroTwo metadata */
+ metadata?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata|null);
+
+ /** SlsaProvenanceZeroTwo materials */
+ materials?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial[]|null);
+ }
+
+ /** Represents a SlsaProvenanceZeroTwo. */
+ class SlsaProvenanceZeroTwo implements ISlsaProvenanceZeroTwo {
+
+ /**
+ * Constructs a new SlsaProvenanceZeroTwo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ISlsaProvenanceZeroTwo);
+
+ /** SlsaProvenanceZeroTwo builder. */
+ public builder?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder|null);
+
+ /** SlsaProvenanceZeroTwo buildType. */
+ public buildType: string;
+
+ /** SlsaProvenanceZeroTwo invocation. */
+ public invocation?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation|null);
+
+ /** SlsaProvenanceZeroTwo buildConfig. */
+ public buildConfig?: (google.protobuf.IStruct|null);
+
+ /** SlsaProvenanceZeroTwo metadata. */
+ public metadata?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata|null);
+
+ /** SlsaProvenanceZeroTwo materials. */
+ public materials: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial[];
+
+ /**
+ * Creates a new SlsaProvenanceZeroTwo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaProvenanceZeroTwo instance
+ */
+ public static create(properties?: grafeas.v1.ISlsaProvenanceZeroTwo): grafeas.v1.SlsaProvenanceZeroTwo;
+
+ /**
+ * Encodes the specified SlsaProvenanceZeroTwo message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.verify|verify} messages.
+ * @param message SlsaProvenanceZeroTwo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ISlsaProvenanceZeroTwo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaProvenanceZeroTwo message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.verify|verify} messages.
+ * @param message SlsaProvenanceZeroTwo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ISlsaProvenanceZeroTwo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaProvenanceZeroTwo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaProvenanceZeroTwo
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo;
+
+ /**
+ * Decodes a SlsaProvenanceZeroTwo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaProvenanceZeroTwo
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo;
+
+ /**
+ * Verifies a SlsaProvenanceZeroTwo 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 SlsaProvenanceZeroTwo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaProvenanceZeroTwo
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo;
+
+ /**
+ * Creates a plain object from a SlsaProvenanceZeroTwo message. Also converts values to other types if specified.
+ * @param message SlsaProvenanceZeroTwo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaProvenanceZeroTwo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaProvenanceZeroTwo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SlsaProvenanceZeroTwo {
+
+ /** Properties of a SlsaBuilder. */
+ interface ISlsaBuilder {
+
+ /** SlsaBuilder id */
+ id?: (string|null);
+ }
+
+ /** Represents a SlsaBuilder. */
+ class SlsaBuilder implements ISlsaBuilder {
+
+ /**
+ * Constructs a new SlsaBuilder.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder);
+
+ /** SlsaBuilder id. */
+ public id: string;
+
+ /**
+ * Creates a new SlsaBuilder instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaBuilder instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder): grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder;
+
+ /**
+ * Encodes the specified SlsaBuilder message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify|verify} messages.
+ * @param message SlsaBuilder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaBuilder message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify|verify} messages.
+ * @param message SlsaBuilder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaBuilder
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder;
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaBuilder
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder;
+
+ /**
+ * Verifies a SlsaBuilder 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 SlsaBuilder message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaBuilder
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder;
+
+ /**
+ * Creates a plain object from a SlsaBuilder message. Also converts values to other types if specified.
+ * @param message SlsaBuilder
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaBuilder to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaBuilder
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaMaterial. */
+ interface ISlsaMaterial {
+
+ /** SlsaMaterial uri */
+ uri?: (string|null);
+
+ /** SlsaMaterial digest */
+ digest?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a SlsaMaterial. */
+ class SlsaMaterial implements ISlsaMaterial {
+
+ /**
+ * Constructs a new SlsaMaterial.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial);
+
+ /** SlsaMaterial uri. */
+ public uri: string;
+
+ /** SlsaMaterial digest. */
+ public digest: { [k: string]: string };
+
+ /**
+ * Creates a new SlsaMaterial instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaMaterial instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial;
+
+ /**
+ * Encodes the specified SlsaMaterial message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify|verify} messages.
+ * @param message SlsaMaterial message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaMaterial message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify|verify} messages.
+ * @param message SlsaMaterial message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaMaterial message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaMaterial
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial;
+
+ /**
+ * Decodes a SlsaMaterial message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaMaterial
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial;
+
+ /**
+ * Verifies a SlsaMaterial 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 SlsaMaterial message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaMaterial
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial;
+
+ /**
+ * Creates a plain object from a SlsaMaterial message. Also converts values to other types if specified.
+ * @param message SlsaMaterial
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaMaterial to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaMaterial
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaInvocation. */
+ interface ISlsaInvocation {
+
+ /** SlsaInvocation configSource */
+ configSource?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource|null);
+
+ /** SlsaInvocation parameters */
+ parameters?: (google.protobuf.IStruct|null);
+
+ /** SlsaInvocation environment */
+ environment?: (google.protobuf.IStruct|null);
+ }
+
+ /** Represents a SlsaInvocation. */
+ class SlsaInvocation implements ISlsaInvocation {
+
+ /**
+ * Constructs a new SlsaInvocation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation);
+
+ /** SlsaInvocation configSource. */
+ public configSource?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource|null);
+
+ /** SlsaInvocation parameters. */
+ public parameters?: (google.protobuf.IStruct|null);
+
+ /** SlsaInvocation environment. */
+ public environment?: (google.protobuf.IStruct|null);
+
+ /**
+ * Creates a new SlsaInvocation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaInvocation instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation): grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation;
+
+ /**
+ * Encodes the specified SlsaInvocation message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify|verify} messages.
+ * @param message SlsaInvocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaInvocation message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify|verify} messages.
+ * @param message SlsaInvocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaInvocation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaInvocation
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation;
+
+ /**
+ * Decodes a SlsaInvocation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaInvocation
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation;
+
+ /**
+ * Verifies a SlsaInvocation 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 SlsaInvocation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaInvocation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation;
+
+ /**
+ * Creates a plain object from a SlsaInvocation message. Also converts values to other types if specified.
+ * @param message SlsaInvocation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaInvocation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaInvocation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaConfigSource. */
+ interface ISlsaConfigSource {
+
+ /** SlsaConfigSource uri */
+ uri?: (string|null);
+
+ /** SlsaConfigSource digest */
+ digest?: ({ [k: string]: string }|null);
+
+ /** SlsaConfigSource entryPoint */
+ entryPoint?: (string|null);
+ }
+
+ /** Represents a SlsaConfigSource. */
+ class SlsaConfigSource implements ISlsaConfigSource {
+
+ /**
+ * Constructs a new SlsaConfigSource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource);
+
+ /** SlsaConfigSource uri. */
+ public uri: string;
+
+ /** SlsaConfigSource digest. */
+ public digest: { [k: string]: string };
+
+ /** SlsaConfigSource entryPoint. */
+ public entryPoint: string;
+
+ /**
+ * Creates a new SlsaConfigSource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaConfigSource instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource): grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource;
+
+ /**
+ * Encodes the specified SlsaConfigSource message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify|verify} messages.
+ * @param message SlsaConfigSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaConfigSource message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify|verify} messages.
+ * @param message SlsaConfigSource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaConfigSource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaConfigSource
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource;
+
+ /**
+ * Decodes a SlsaConfigSource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaConfigSource
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource;
+
+ /**
+ * Verifies a SlsaConfigSource 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 SlsaConfigSource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaConfigSource
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource;
+
+ /**
+ * Creates a plain object from a SlsaConfigSource message. Also converts values to other types if specified.
+ * @param message SlsaConfigSource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaConfigSource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaConfigSource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaMetadata. */
+ interface ISlsaMetadata {
+
+ /** SlsaMetadata buildInvocationId */
+ buildInvocationId?: (string|null);
+
+ /** SlsaMetadata buildStartedOn */
+ buildStartedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata buildFinishedOn */
+ buildFinishedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata completeness */
+ completeness?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness|null);
+
+ /** SlsaMetadata reproducible */
+ reproducible?: (boolean|null);
+ }
+
+ /** Represents a SlsaMetadata. */
+ class SlsaMetadata implements ISlsaMetadata {
+
+ /**
+ * Constructs a new SlsaMetadata.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata);
+
+ /** SlsaMetadata buildInvocationId. */
+ public buildInvocationId: string;
+
+ /** SlsaMetadata buildStartedOn. */
+ public buildStartedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata buildFinishedOn. */
+ public buildFinishedOn?: (google.protobuf.ITimestamp|null);
+
+ /** SlsaMetadata completeness. */
+ public completeness?: (grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness|null);
+
+ /** SlsaMetadata reproducible. */
+ public reproducible: boolean;
+
+ /**
+ * Creates a new SlsaMetadata instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaMetadata instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata;
+
+ /**
+ * Encodes the specified SlsaMetadata message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify|verify} messages.
+ * @param message SlsaMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaMetadata message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify|verify} messages.
+ * @param message SlsaMetadata message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaMetadata
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata;
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaMetadata
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata;
+
+ /**
+ * Verifies a SlsaMetadata 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 SlsaMetadata message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaMetadata
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata;
+
+ /**
+ * Creates a plain object from a SlsaMetadata message. Also converts values to other types if specified.
+ * @param message SlsaMetadata
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaMetadata to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaMetadata
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SlsaCompleteness. */
+ interface ISlsaCompleteness {
+
+ /** SlsaCompleteness parameters */
+ parameters?: (boolean|null);
+
+ /** SlsaCompleteness environment */
+ environment?: (boolean|null);
+
+ /** SlsaCompleteness materials */
+ materials?: (boolean|null);
+ }
+
+ /** Represents a SlsaCompleteness. */
+ class SlsaCompleteness implements ISlsaCompleteness {
+
+ /**
+ * Constructs a new SlsaCompleteness.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness);
+
+ /** SlsaCompleteness parameters. */
+ public parameters: boolean;
+
+ /** SlsaCompleteness environment. */
+ public environment: boolean;
+
+ /** SlsaCompleteness materials. */
+ public materials: boolean;
+
+ /**
+ * Creates a new SlsaCompleteness instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SlsaCompleteness instance
+ */
+ public static create(properties?: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness): grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness;
+
+ /**
+ * Encodes the specified SlsaCompleteness message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify|verify} messages.
+ * @param message SlsaCompleteness message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SlsaCompleteness message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify|verify} messages.
+ * @param message SlsaCompleteness message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SlsaCompleteness
+ * @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): grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness;
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SlsaCompleteness
+ * @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)): grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness;
+
+ /**
+ * Verifies a SlsaCompleteness 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 SlsaCompleteness message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SlsaCompleteness
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness;
+
+ /**
+ * Creates a plain object from a SlsaCompleteness message. Also converts values to other types if specified.
+ * @param message SlsaCompleteness
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SlsaCompleteness to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SlsaCompleteness
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a BuildProvenance. */
+ interface IBuildProvenance {
+
+ /** BuildProvenance id */
+ id?: (string|null);
+
+ /** BuildProvenance projectId */
+ projectId?: (string|null);
+
+ /** BuildProvenance commands */
+ commands?: (grafeas.v1.ICommand[]|null);
+
+ /** BuildProvenance builtArtifacts */
+ builtArtifacts?: (grafeas.v1.IArtifact[]|null);
+
+ /** BuildProvenance createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance creator */
+ creator?: (string|null);
+
+ /** BuildProvenance logsUri */
+ logsUri?: (string|null);
+
+ /** BuildProvenance sourceProvenance */
+ sourceProvenance?: (grafeas.v1.ISource|null);
+
+ /** BuildProvenance triggerId */
+ triggerId?: (string|null);
+
+ /** BuildProvenance buildOptions */
+ buildOptions?: ({ [k: string]: string }|null);
+
+ /** BuildProvenance builderVersion */
+ builderVersion?: (string|null);
+ }
+
+ /** Represents a BuildProvenance. */
+ class BuildProvenance implements IBuildProvenance {
+
+ /**
+ * Constructs a new BuildProvenance.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBuildProvenance);
+
+ /** BuildProvenance id. */
+ public id: string;
+
+ /** BuildProvenance projectId. */
+ public projectId: string;
+
+ /** BuildProvenance commands. */
+ public commands: grafeas.v1.ICommand[];
+
+ /** BuildProvenance builtArtifacts. */
+ public builtArtifacts: grafeas.v1.IArtifact[];
+
+ /** BuildProvenance createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance creator. */
+ public creator: string;
+
+ /** BuildProvenance logsUri. */
+ public logsUri: string;
+
+ /** BuildProvenance sourceProvenance. */
+ public sourceProvenance?: (grafeas.v1.ISource|null);
+
+ /** BuildProvenance triggerId. */
+ public triggerId: string;
+
+ /** BuildProvenance buildOptions. */
+ public buildOptions: { [k: string]: string };
+
+ /** BuildProvenance builderVersion. */
+ public builderVersion: string;
+
+ /**
+ * Creates a new BuildProvenance instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BuildProvenance instance
+ */
+ public static create(properties?: grafeas.v1.IBuildProvenance): grafeas.v1.BuildProvenance;
+
+ /**
+ * Encodes the specified BuildProvenance message. Does not implicitly {@link grafeas.v1.BuildProvenance.verify|verify} messages.
+ * @param message BuildProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBuildProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BuildProvenance message, length delimited. Does not implicitly {@link grafeas.v1.BuildProvenance.verify|verify} messages.
+ * @param message BuildProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBuildProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BuildProvenance message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BuildProvenance
+ * @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): grafeas.v1.BuildProvenance;
+
+ /**
+ * Decodes a BuildProvenance message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BuildProvenance
+ * @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)): grafeas.v1.BuildProvenance;
+
+ /**
+ * Verifies a BuildProvenance 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 BuildProvenance message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BuildProvenance
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BuildProvenance;
+
+ /**
+ * Creates a plain object from a BuildProvenance message. Also converts values to other types if specified.
+ * @param message BuildProvenance
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BuildProvenance, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BuildProvenance to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BuildProvenance
+ * @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 artifactStorageSourceUri */
+ artifactStorageSourceUri?: (string|null);
+
+ /** Source fileHashes */
+ fileHashes?: ({ [k: string]: grafeas.v1.IFileHashes }|null);
+
+ /** Source context */
+ context?: (grafeas.v1.ISourceContext|null);
+
+ /** Source additionalContexts */
+ additionalContexts?: (grafeas.v1.ISourceContext[]|null);
+ }
+
+ /** Represents a Source. */
+ class Source implements ISource {
+
+ /**
+ * Constructs a new Source.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ISource);
+
+ /** Source artifactStorageSourceUri. */
+ public artifactStorageSourceUri: string;
+
+ /** Source fileHashes. */
+ public fileHashes: { [k: string]: grafeas.v1.IFileHashes };
+
+ /** Source context. */
+ public context?: (grafeas.v1.ISourceContext|null);
+
+ /** Source additionalContexts. */
+ public additionalContexts: grafeas.v1.ISourceContext[];
+
+ /**
+ * Creates a new Source instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Source instance
+ */
+ public static create(properties?: grafeas.v1.ISource): grafeas.v1.Source;
+
+ /**
+ * Encodes the specified Source message. Does not implicitly {@link grafeas.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: grafeas.v1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Source message, length delimited. Does not implicitly {@link grafeas.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: grafeas.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): grafeas.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)): grafeas.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 }): grafeas.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: grafeas.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;
+ }
+
+ /** Properties of a FileHashes. */
+ interface IFileHashes {
+
+ /** FileHashes fileHash */
+ fileHash?: (grafeas.v1.IHash[]|null);
+ }
+
+ /** Represents a FileHashes. */
+ class FileHashes implements IFileHashes {
+
+ /**
+ * Constructs a new FileHashes.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IFileHashes);
+
+ /** FileHashes fileHash. */
+ public fileHash: grafeas.v1.IHash[];
+
+ /**
+ * Creates a new FileHashes instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileHashes instance
+ */
+ public static create(properties?: grafeas.v1.IFileHashes): grafeas.v1.FileHashes;
+
+ /**
+ * Encodes the specified FileHashes message. Does not implicitly {@link grafeas.v1.FileHashes.verify|verify} messages.
+ * @param message FileHashes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IFileHashes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileHashes message, length delimited. Does not implicitly {@link grafeas.v1.FileHashes.verify|verify} messages.
+ * @param message FileHashes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IFileHashes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileHashes message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileHashes
+ * @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): grafeas.v1.FileHashes;
+
+ /**
+ * Decodes a FileHashes message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileHashes
+ * @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)): grafeas.v1.FileHashes;
+
+ /**
+ * Verifies a FileHashes 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 FileHashes message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileHashes
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.FileHashes;
+
+ /**
+ * Creates a plain object from a FileHashes message. Also converts values to other types if specified.
+ * @param message FileHashes
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.FileHashes, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileHashes to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileHashes
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Hash. */
+ interface IHash {
+
+ /** Hash type */
+ type?: (string|null);
+
+ /** Hash value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents a Hash. */
+ class Hash implements IHash {
+
+ /**
+ * Constructs a new Hash.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IHash);
+
+ /** Hash type. */
+ public type: string;
+
+ /** Hash value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new Hash instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Hash instance
+ */
+ public static create(properties?: grafeas.v1.IHash): grafeas.v1.Hash;
+
+ /**
+ * Encodes the specified Hash message. Does not implicitly {@link grafeas.v1.Hash.verify|verify} messages.
+ * @param message Hash message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IHash, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Hash message, length delimited. Does not implicitly {@link grafeas.v1.Hash.verify|verify} messages.
+ * @param message Hash message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IHash, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Hash message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Hash
+ * @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): grafeas.v1.Hash;
+
+ /**
+ * Decodes a Hash message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Hash
+ * @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)): grafeas.v1.Hash;
+
+ /**
+ * Verifies a Hash 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 Hash message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Hash
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Hash;
+
+ /**
+ * Creates a plain object from a Hash message. Also converts values to other types if specified.
+ * @param message Hash
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Hash, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Hash to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Hash
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Command. */
+ interface ICommand {
+
+ /** Command name */
+ name?: (string|null);
+
+ /** Command env */
+ env?: (string[]|null);
+
+ /** Command args */
+ args?: (string[]|null);
+
+ /** Command dir */
+ dir?: (string|null);
+
+ /** Command id */
+ id?: (string|null);
+
+ /** Command waitFor */
+ waitFor?: (string[]|null);
+ }
+
+ /** Represents a Command. */
+ class Command implements ICommand {
+
+ /**
+ * Constructs a new Command.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICommand);
+
+ /** Command name. */
+ public name: string;
+
+ /** Command env. */
+ public env: string[];
+
+ /** Command args. */
+ public args: string[];
+
+ /** Command dir. */
+ public dir: string;
+
+ /** Command id. */
+ public id: string;
+
+ /** Command waitFor. */
+ public waitFor: string[];
+
+ /**
+ * Creates a new Command instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Command instance
+ */
+ public static create(properties?: grafeas.v1.ICommand): grafeas.v1.Command;
+
+ /**
+ * Encodes the specified Command message. Does not implicitly {@link grafeas.v1.Command.verify|verify} messages.
+ * @param message Command message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ICommand, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Command message, length delimited. Does not implicitly {@link grafeas.v1.Command.verify|verify} messages.
+ * @param message Command message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ICommand, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Command message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Command
+ * @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): grafeas.v1.Command;
+
+ /**
+ * Decodes a Command message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Command
+ * @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)): grafeas.v1.Command;
+
+ /**
+ * Verifies a Command 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 Command message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Command
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Command;
+
+ /**
+ * Creates a plain object from a Command message. Also converts values to other types if specified.
+ * @param message Command
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Command, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Command to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Command
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Artifact. */
+ interface IArtifact {
+
+ /** Artifact checksum */
+ checksum?: (string|null);
+
+ /** Artifact id */
+ id?: (string|null);
+
+ /** Artifact names */
+ names?: (string[]|null);
+ }
+
+ /** Represents an Artifact. */
+ class Artifact implements IArtifact {
+
+ /**
+ * Constructs a new Artifact.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IArtifact);
+
+ /** Artifact checksum. */
+ public checksum: string;
+
+ /** Artifact id. */
+ public id: string;
+
+ /** Artifact names. */
+ public names: string[];
+
+ /**
+ * Creates a new Artifact instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Artifact instance
+ */
+ public static create(properties?: grafeas.v1.IArtifact): grafeas.v1.Artifact;
+
+ /**
+ * Encodes the specified Artifact message. Does not implicitly {@link grafeas.v1.Artifact.verify|verify} messages.
+ * @param message Artifact message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IArtifact, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Artifact message, length delimited. Does not implicitly {@link grafeas.v1.Artifact.verify|verify} messages.
+ * @param message Artifact message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IArtifact, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Artifact message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Artifact
+ * @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): grafeas.v1.Artifact;
+
+ /**
+ * Decodes an Artifact message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Artifact
+ * @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)): grafeas.v1.Artifact;
+
+ /**
+ * Verifies an Artifact 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 Artifact message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Artifact
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Artifact;
+
+ /**
+ * Creates a plain object from an Artifact message. Also converts values to other types if specified.
+ * @param message Artifact
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Artifact, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Artifact to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Artifact
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SourceContext. */
+ interface ISourceContext {
+
+ /** SourceContext cloudRepo */
+ cloudRepo?: (grafeas.v1.ICloudRepoSourceContext|null);
+
+ /** SourceContext gerrit */
+ gerrit?: (grafeas.v1.IGerritSourceContext|null);
+
+ /** SourceContext git */
+ git?: (grafeas.v1.IGitSourceContext|null);
+
+ /** SourceContext labels */
+ labels?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a SourceContext. */
+ class SourceContext implements ISourceContext {
+
+ /**
+ * Constructs a new SourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ISourceContext);
+
+ /** SourceContext cloudRepo. */
+ public cloudRepo?: (grafeas.v1.ICloudRepoSourceContext|null);
+
+ /** SourceContext gerrit. */
+ public gerrit?: (grafeas.v1.IGerritSourceContext|null);
+
+ /** SourceContext git. */
+ public git?: (grafeas.v1.IGitSourceContext|null);
+
+ /** SourceContext labels. */
+ public labels: { [k: string]: string };
+
+ /** SourceContext context. */
+ public context?: ("cloudRepo"|"gerrit"|"git");
+
+ /**
+ * Creates a new SourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SourceContext instance
+ */
+ public static create(properties?: grafeas.v1.ISourceContext): grafeas.v1.SourceContext;
+
+ /**
+ * Encodes the specified SourceContext message. Does not implicitly {@link grafeas.v1.SourceContext.verify|verify} messages.
+ * @param message SourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ISourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SourceContext message, length delimited. Does not implicitly {@link grafeas.v1.SourceContext.verify|verify} messages.
+ * @param message SourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ISourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SourceContext
+ * @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): grafeas.v1.SourceContext;
+
+ /**
+ * Decodes a SourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SourceContext
+ * @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)): grafeas.v1.SourceContext;
+
+ /**
+ * Verifies a SourceContext 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 SourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.SourceContext;
+
+ /**
+ * Creates a plain object from a SourceContext message. Also converts values to other types if specified.
+ * @param message SourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.SourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AliasContext. */
+ interface IAliasContext {
+
+ /** AliasContext kind */
+ kind?: (grafeas.v1.AliasContext.Kind|keyof typeof grafeas.v1.AliasContext.Kind|null);
+
+ /** AliasContext name */
+ name?: (string|null);
+ }
+
+ /** Represents an AliasContext. */
+ class AliasContext implements IAliasContext {
+
+ /**
+ * Constructs a new AliasContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IAliasContext);
+
+ /** AliasContext kind. */
+ public kind: (grafeas.v1.AliasContext.Kind|keyof typeof grafeas.v1.AliasContext.Kind);
+
+ /** AliasContext name. */
+ public name: string;
+
+ /**
+ * Creates a new AliasContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AliasContext instance
+ */
+ public static create(properties?: grafeas.v1.IAliasContext): grafeas.v1.AliasContext;
+
+ /**
+ * Encodes the specified AliasContext message. Does not implicitly {@link grafeas.v1.AliasContext.verify|verify} messages.
+ * @param message AliasContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IAliasContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AliasContext message, length delimited. Does not implicitly {@link grafeas.v1.AliasContext.verify|verify} messages.
+ * @param message AliasContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IAliasContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AliasContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AliasContext
+ * @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): grafeas.v1.AliasContext;
+
+ /**
+ * Decodes an AliasContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AliasContext
+ * @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)): grafeas.v1.AliasContext;
+
+ /**
+ * Verifies an AliasContext 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 AliasContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AliasContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.AliasContext;
+
+ /**
+ * Creates a plain object from an AliasContext message. Also converts values to other types if specified.
+ * @param message AliasContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.AliasContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AliasContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AliasContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AliasContext {
+
+ /** Kind enum. */
+ enum Kind {
+ KIND_UNSPECIFIED = 0,
+ FIXED = 1,
+ MOVABLE = 2,
+ OTHER = 4
+ }
+ }
+
+ /** Properties of a CloudRepoSourceContext. */
+ interface ICloudRepoSourceContext {
+
+ /** CloudRepoSourceContext repoId */
+ repoId?: (grafeas.v1.IRepoId|null);
+
+ /** CloudRepoSourceContext revisionId */
+ revisionId?: (string|null);
+
+ /** CloudRepoSourceContext aliasContext */
+ aliasContext?: (grafeas.v1.IAliasContext|null);
+ }
+
+ /** Represents a CloudRepoSourceContext. */
+ class CloudRepoSourceContext implements ICloudRepoSourceContext {
+
+ /**
+ * Constructs a new CloudRepoSourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICloudRepoSourceContext);
+
+ /** CloudRepoSourceContext repoId. */
+ public repoId?: (grafeas.v1.IRepoId|null);
+
+ /** CloudRepoSourceContext revisionId. */
+ public revisionId?: (string|null);
+
+ /** CloudRepoSourceContext aliasContext. */
+ public aliasContext?: (grafeas.v1.IAliasContext|null);
+
+ /** CloudRepoSourceContext revision. */
+ public revision?: ("revisionId"|"aliasContext");
+
+ /**
+ * Creates a new CloudRepoSourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CloudRepoSourceContext instance
+ */
+ public static create(properties?: grafeas.v1.ICloudRepoSourceContext): grafeas.v1.CloudRepoSourceContext;
+
+ /**
+ * Encodes the specified CloudRepoSourceContext message. Does not implicitly {@link grafeas.v1.CloudRepoSourceContext.verify|verify} messages.
+ * @param message CloudRepoSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ICloudRepoSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CloudRepoSourceContext message, length delimited. Does not implicitly {@link grafeas.v1.CloudRepoSourceContext.verify|verify} messages.
+ * @param message CloudRepoSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ICloudRepoSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CloudRepoSourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CloudRepoSourceContext
+ * @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): grafeas.v1.CloudRepoSourceContext;
+
+ /**
+ * Decodes a CloudRepoSourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CloudRepoSourceContext
+ * @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)): grafeas.v1.CloudRepoSourceContext;
+
+ /**
+ * Verifies a CloudRepoSourceContext 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 CloudRepoSourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CloudRepoSourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.CloudRepoSourceContext;
+
+ /**
+ * Creates a plain object from a CloudRepoSourceContext message. Also converts values to other types if specified.
+ * @param message CloudRepoSourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.CloudRepoSourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CloudRepoSourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CloudRepoSourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GerritSourceContext. */
+ interface IGerritSourceContext {
+
+ /** GerritSourceContext hostUri */
+ hostUri?: (string|null);
+
+ /** GerritSourceContext gerritProject */
+ gerritProject?: (string|null);
+
+ /** GerritSourceContext revisionId */
+ revisionId?: (string|null);
+
+ /** GerritSourceContext aliasContext */
+ aliasContext?: (grafeas.v1.IAliasContext|null);
+ }
+
+ /** Represents a GerritSourceContext. */
+ class GerritSourceContext implements IGerritSourceContext {
+
+ /**
+ * Constructs a new GerritSourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IGerritSourceContext);
+
+ /** GerritSourceContext hostUri. */
+ public hostUri: string;
+
+ /** GerritSourceContext gerritProject. */
+ public gerritProject: string;
+
+ /** GerritSourceContext revisionId. */
+ public revisionId?: (string|null);
+
+ /** GerritSourceContext aliasContext. */
+ public aliasContext?: (grafeas.v1.IAliasContext|null);
+
+ /** GerritSourceContext revision. */
+ public revision?: ("revisionId"|"aliasContext");
+
+ /**
+ * Creates a new GerritSourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GerritSourceContext instance
+ */
+ public static create(properties?: grafeas.v1.IGerritSourceContext): grafeas.v1.GerritSourceContext;
+
+ /**
+ * Encodes the specified GerritSourceContext message. Does not implicitly {@link grafeas.v1.GerritSourceContext.verify|verify} messages.
+ * @param message GerritSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IGerritSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GerritSourceContext message, length delimited. Does not implicitly {@link grafeas.v1.GerritSourceContext.verify|verify} messages.
+ * @param message GerritSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IGerritSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GerritSourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GerritSourceContext
+ * @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): grafeas.v1.GerritSourceContext;
+
+ /**
+ * Decodes a GerritSourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GerritSourceContext
+ * @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)): grafeas.v1.GerritSourceContext;
+
+ /**
+ * Verifies a GerritSourceContext 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 GerritSourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GerritSourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.GerritSourceContext;
+
+ /**
+ * Creates a plain object from a GerritSourceContext message. Also converts values to other types if specified.
+ * @param message GerritSourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.GerritSourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GerritSourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GerritSourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GitSourceContext. */
+ interface IGitSourceContext {
+
+ /** GitSourceContext url */
+ url?: (string|null);
+
+ /** GitSourceContext revisionId */
+ revisionId?: (string|null);
+ }
+
+ /** Represents a GitSourceContext. */
+ class GitSourceContext implements IGitSourceContext {
+
+ /**
+ * Constructs a new GitSourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IGitSourceContext);
+
+ /** GitSourceContext url. */
+ public url: string;
+
+ /** GitSourceContext revisionId. */
+ public revisionId: string;
+
+ /**
+ * Creates a new GitSourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GitSourceContext instance
+ */
+ public static create(properties?: grafeas.v1.IGitSourceContext): grafeas.v1.GitSourceContext;
+
+ /**
+ * Encodes the specified GitSourceContext message. Does not implicitly {@link grafeas.v1.GitSourceContext.verify|verify} messages.
+ * @param message GitSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IGitSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GitSourceContext message, length delimited. Does not implicitly {@link grafeas.v1.GitSourceContext.verify|verify} messages.
+ * @param message GitSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IGitSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GitSourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GitSourceContext
+ * @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): grafeas.v1.GitSourceContext;
+
+ /**
+ * Decodes a GitSourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GitSourceContext
+ * @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)): grafeas.v1.GitSourceContext;
+
+ /**
+ * Verifies a GitSourceContext 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 GitSourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GitSourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.GitSourceContext;
+
+ /**
+ * Creates a plain object from a GitSourceContext message. Also converts values to other types if specified.
+ * @param message GitSourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.GitSourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GitSourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GitSourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RepoId. */
+ interface IRepoId {
+
+ /** RepoId projectRepoId */
+ projectRepoId?: (grafeas.v1.IProjectRepoId|null);
+
+ /** RepoId uid */
+ uid?: (string|null);
+ }
+
+ /** Represents a RepoId. */
+ class RepoId implements IRepoId {
+
+ /**
+ * Constructs a new RepoId.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IRepoId);
+
+ /** RepoId projectRepoId. */
+ public projectRepoId?: (grafeas.v1.IProjectRepoId|null);
+
+ /** RepoId uid. */
+ public uid?: (string|null);
+
+ /** RepoId id. */
+ public id?: ("projectRepoId"|"uid");
+
+ /**
+ * Creates a new RepoId instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RepoId instance
+ */
+ public static create(properties?: grafeas.v1.IRepoId): grafeas.v1.RepoId;
+
+ /**
+ * Encodes the specified RepoId message. Does not implicitly {@link grafeas.v1.RepoId.verify|verify} messages.
+ * @param message RepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RepoId message, length delimited. Does not implicitly {@link grafeas.v1.RepoId.verify|verify} messages.
+ * @param message RepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RepoId message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RepoId
+ * @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): grafeas.v1.RepoId;
+
+ /**
+ * Decodes a RepoId message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RepoId
+ * @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)): grafeas.v1.RepoId;
+
+ /**
+ * Verifies a RepoId 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 RepoId message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RepoId
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.RepoId;
+
+ /**
+ * Creates a plain object from a RepoId message. Also converts values to other types if specified.
+ * @param message RepoId
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.RepoId, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RepoId to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RepoId
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ProjectRepoId. */
+ interface IProjectRepoId {
+
+ /** ProjectRepoId projectId */
+ projectId?: (string|null);
+
+ /** ProjectRepoId repoName */
+ repoName?: (string|null);
+ }
+
+ /** Represents a ProjectRepoId. */
+ class ProjectRepoId implements IProjectRepoId {
+
+ /**
+ * Constructs a new ProjectRepoId.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IProjectRepoId);
+
+ /** ProjectRepoId projectId. */
+ public projectId: string;
+
+ /** ProjectRepoId repoName. */
+ public repoName: string;
+
+ /**
+ * Creates a new ProjectRepoId instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProjectRepoId instance
+ */
+ public static create(properties?: grafeas.v1.IProjectRepoId): grafeas.v1.ProjectRepoId;
+
+ /**
+ * Encodes the specified ProjectRepoId message. Does not implicitly {@link grafeas.v1.ProjectRepoId.verify|verify} messages.
+ * @param message ProjectRepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IProjectRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProjectRepoId message, length delimited. Does not implicitly {@link grafeas.v1.ProjectRepoId.verify|verify} messages.
+ * @param message ProjectRepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IProjectRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProjectRepoId message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProjectRepoId
+ * @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): grafeas.v1.ProjectRepoId;
+
+ /**
+ * Decodes a ProjectRepoId message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProjectRepoId
+ * @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)): grafeas.v1.ProjectRepoId;
+
+ /**
+ * Verifies a ProjectRepoId 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 ProjectRepoId message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProjectRepoId
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ProjectRepoId;
+
+ /**
+ * Creates a plain object from a ProjectRepoId message. Also converts values to other types if specified.
+ * @param message ProjectRepoId
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ProjectRepoId, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProjectRepoId to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProjectRepoId
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ComplianceNote. */
+ interface IComplianceNote {
+
+ /** ComplianceNote title */
+ title?: (string|null);
+
+ /** ComplianceNote description */
+ description?: (string|null);
+
+ /** ComplianceNote version */
+ version?: (grafeas.v1.IComplianceVersion[]|null);
+
+ /** ComplianceNote rationale */
+ rationale?: (string|null);
+
+ /** ComplianceNote remediation */
+ remediation?: (string|null);
+
+ /** ComplianceNote cisBenchmark */
+ cisBenchmark?: (grafeas.v1.ComplianceNote.ICisBenchmark|null);
+
+ /** ComplianceNote scanInstructions */
+ scanInstructions?: (Uint8Array|string|null);
+ }
+
+ /** Represents a ComplianceNote. */
+ class ComplianceNote implements IComplianceNote {
+
+ /**
+ * Constructs a new ComplianceNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IComplianceNote);
+
+ /** ComplianceNote title. */
+ public title: string;
+
+ /** ComplianceNote description. */
+ public description: string;
+
+ /** ComplianceNote version. */
+ public version: grafeas.v1.IComplianceVersion[];
+
+ /** ComplianceNote rationale. */
+ public rationale: string;
+
+ /** ComplianceNote remediation. */
+ public remediation: string;
+
+ /** ComplianceNote cisBenchmark. */
+ public cisBenchmark?: (grafeas.v1.ComplianceNote.ICisBenchmark|null);
+
+ /** ComplianceNote scanInstructions. */
+ public scanInstructions: (Uint8Array|string);
+
+ /** ComplianceNote complianceType. */
+ public complianceType?: "cisBenchmark";
+
+ /**
+ * Creates a new ComplianceNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ComplianceNote instance
+ */
+ public static create(properties?: grafeas.v1.IComplianceNote): grafeas.v1.ComplianceNote;
+
+ /**
+ * Encodes the specified ComplianceNote message. Does not implicitly {@link grafeas.v1.ComplianceNote.verify|verify} messages.
+ * @param message ComplianceNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IComplianceNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ComplianceNote message, length delimited. Does not implicitly {@link grafeas.v1.ComplianceNote.verify|verify} messages.
+ * @param message ComplianceNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IComplianceNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ComplianceNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ComplianceNote
+ * @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): grafeas.v1.ComplianceNote;
+
+ /**
+ * Decodes a ComplianceNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ComplianceNote
+ * @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)): grafeas.v1.ComplianceNote;
+
+ /**
+ * Verifies a ComplianceNote 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 ComplianceNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ComplianceNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ComplianceNote;
+
+ /**
+ * Creates a plain object from a ComplianceNote message. Also converts values to other types if specified.
+ * @param message ComplianceNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ComplianceNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ComplianceNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ComplianceNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ComplianceNote {
+
+ /** Properties of a CisBenchmark. */
+ interface ICisBenchmark {
+
+ /** CisBenchmark profileLevel */
+ profileLevel?: (number|null);
+
+ /** CisBenchmark severity */
+ severity?: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity|null);
+ }
+
+ /** Represents a CisBenchmark. */
+ class CisBenchmark implements ICisBenchmark {
+
+ /**
+ * Constructs a new CisBenchmark.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ComplianceNote.ICisBenchmark);
+
+ /** CisBenchmark profileLevel. */
+ public profileLevel: number;
+
+ /** CisBenchmark severity. */
+ public severity: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity);
+
+ /**
+ * Creates a new CisBenchmark instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CisBenchmark instance
+ */
+ public static create(properties?: grafeas.v1.ComplianceNote.ICisBenchmark): grafeas.v1.ComplianceNote.CisBenchmark;
+
+ /**
+ * Encodes the specified CisBenchmark message. Does not implicitly {@link grafeas.v1.ComplianceNote.CisBenchmark.verify|verify} messages.
+ * @param message CisBenchmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ComplianceNote.ICisBenchmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CisBenchmark message, length delimited. Does not implicitly {@link grafeas.v1.ComplianceNote.CisBenchmark.verify|verify} messages.
+ * @param message CisBenchmark message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ComplianceNote.ICisBenchmark, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CisBenchmark message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CisBenchmark
+ * @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): grafeas.v1.ComplianceNote.CisBenchmark;
+
+ /**
+ * Decodes a CisBenchmark message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CisBenchmark
+ * @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)): grafeas.v1.ComplianceNote.CisBenchmark;
+
+ /**
+ * Verifies a CisBenchmark 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 CisBenchmark message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CisBenchmark
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ComplianceNote.CisBenchmark;
+
+ /**
+ * Creates a plain object from a CisBenchmark message. Also converts values to other types if specified.
+ * @param message CisBenchmark
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ComplianceNote.CisBenchmark, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CisBenchmark to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CisBenchmark
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a ComplianceVersion. */
+ interface IComplianceVersion {
+
+ /** ComplianceVersion cpeUri */
+ cpeUri?: (string|null);
+
+ /** ComplianceVersion benchmarkDocument */
+ benchmarkDocument?: (string|null);
+
+ /** ComplianceVersion version */
+ version?: (string|null);
+ }
+
+ /** Represents a ComplianceVersion. */
+ class ComplianceVersion implements IComplianceVersion {
+
+ /**
+ * Constructs a new ComplianceVersion.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IComplianceVersion);
+
+ /** ComplianceVersion cpeUri. */
+ public cpeUri: string;
+
+ /** ComplianceVersion benchmarkDocument. */
+ public benchmarkDocument: string;
+
+ /** ComplianceVersion version. */
+ public version: string;
+
+ /**
+ * Creates a new ComplianceVersion instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ComplianceVersion instance
+ */
+ public static create(properties?: grafeas.v1.IComplianceVersion): grafeas.v1.ComplianceVersion;
+
+ /**
+ * Encodes the specified ComplianceVersion message. Does not implicitly {@link grafeas.v1.ComplianceVersion.verify|verify} messages.
+ * @param message ComplianceVersion message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IComplianceVersion, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ComplianceVersion message, length delimited. Does not implicitly {@link grafeas.v1.ComplianceVersion.verify|verify} messages.
+ * @param message ComplianceVersion message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IComplianceVersion, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ComplianceVersion message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ComplianceVersion
+ * @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): grafeas.v1.ComplianceVersion;
+
+ /**
+ * Decodes a ComplianceVersion message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ComplianceVersion
+ * @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)): grafeas.v1.ComplianceVersion;
+
+ /**
+ * Verifies a ComplianceVersion 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 ComplianceVersion message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ComplianceVersion
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ComplianceVersion;
+
+ /**
+ * Creates a plain object from a ComplianceVersion message. Also converts values to other types if specified.
+ * @param message ComplianceVersion
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ComplianceVersion, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ComplianceVersion to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ComplianceVersion
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ComplianceOccurrence. */
+ interface IComplianceOccurrence {
+
+ /** ComplianceOccurrence nonCompliantFiles */
+ nonCompliantFiles?: (grafeas.v1.INonCompliantFile[]|null);
+
+ /** ComplianceOccurrence nonComplianceReason */
+ nonComplianceReason?: (string|null);
+ }
+
+ /** Represents a ComplianceOccurrence. */
+ class ComplianceOccurrence implements IComplianceOccurrence {
+
+ /**
+ * Constructs a new ComplianceOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IComplianceOccurrence);
+
+ /** ComplianceOccurrence nonCompliantFiles. */
+ public nonCompliantFiles: grafeas.v1.INonCompliantFile[];
+
+ /** ComplianceOccurrence nonComplianceReason. */
+ public nonComplianceReason: string;
+
+ /**
+ * Creates a new ComplianceOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ComplianceOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IComplianceOccurrence): grafeas.v1.ComplianceOccurrence;
+
+ /**
+ * Encodes the specified ComplianceOccurrence message. Does not implicitly {@link grafeas.v1.ComplianceOccurrence.verify|verify} messages.
+ * @param message ComplianceOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IComplianceOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ComplianceOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.ComplianceOccurrence.verify|verify} messages.
+ * @param message ComplianceOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IComplianceOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ComplianceOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ComplianceOccurrence
+ * @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): grafeas.v1.ComplianceOccurrence;
+
+ /**
+ * Decodes a ComplianceOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ComplianceOccurrence
+ * @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)): grafeas.v1.ComplianceOccurrence;
+
+ /**
+ * Verifies a ComplianceOccurrence 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 ComplianceOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ComplianceOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ComplianceOccurrence;
+
+ /**
+ * Creates a plain object from a ComplianceOccurrence message. Also converts values to other types if specified.
+ * @param message ComplianceOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ComplianceOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ComplianceOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ComplianceOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NonCompliantFile. */
+ interface INonCompliantFile {
+
+ /** NonCompliantFile path */
+ path?: (string|null);
+
+ /** NonCompliantFile displayCommand */
+ displayCommand?: (string|null);
+
+ /** NonCompliantFile reason */
+ reason?: (string|null);
+ }
+
+ /** Represents a NonCompliantFile. */
+ class NonCompliantFile implements INonCompliantFile {
+
+ /**
+ * Constructs a new NonCompliantFile.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.INonCompliantFile);
+
+ /** NonCompliantFile path. */
+ public path: string;
+
+ /** NonCompliantFile displayCommand. */
+ public displayCommand: string;
+
+ /** NonCompliantFile reason. */
+ public reason: string;
+
+ /**
+ * Creates a new NonCompliantFile instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NonCompliantFile instance
+ */
+ public static create(properties?: grafeas.v1.INonCompliantFile): grafeas.v1.NonCompliantFile;
+
+ /**
+ * Encodes the specified NonCompliantFile message. Does not implicitly {@link grafeas.v1.NonCompliantFile.verify|verify} messages.
+ * @param message NonCompliantFile message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.INonCompliantFile, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NonCompliantFile message, length delimited. Does not implicitly {@link grafeas.v1.NonCompliantFile.verify|verify} messages.
+ * @param message NonCompliantFile message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.INonCompliantFile, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NonCompliantFile message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NonCompliantFile
+ * @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): grafeas.v1.NonCompliantFile;
+
+ /**
+ * Decodes a NonCompliantFile message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NonCompliantFile
+ * @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)): grafeas.v1.NonCompliantFile;
+
+ /**
+ * Verifies a NonCompliantFile 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 NonCompliantFile message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NonCompliantFile
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.NonCompliantFile;
+
+ /**
+ * Creates a plain object from a NonCompliantFile message. Also converts values to other types if specified.
+ * @param message NonCompliantFile
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.NonCompliantFile, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NonCompliantFile to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NonCompliantFile
+ * @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 exploitabilityScore */
+ exploitabilityScore?: (number|null);
+
+ /** CVSSv3 impactScore */
+ impactScore?: (number|null);
+
+ /** CVSSv3 attackVector */
+ attackVector?: (grafeas.v1.CVSSv3.AttackVector|keyof typeof grafeas.v1.CVSSv3.AttackVector|null);
+
+ /** CVSSv3 attackComplexity */
+ attackComplexity?: (grafeas.v1.CVSSv3.AttackComplexity|keyof typeof grafeas.v1.CVSSv3.AttackComplexity|null);
+
+ /** CVSSv3 privilegesRequired */
+ privilegesRequired?: (grafeas.v1.CVSSv3.PrivilegesRequired|keyof typeof grafeas.v1.CVSSv3.PrivilegesRequired|null);
+
+ /** CVSSv3 userInteraction */
+ userInteraction?: (grafeas.v1.CVSSv3.UserInteraction|keyof typeof grafeas.v1.CVSSv3.UserInteraction|null);
+
+ /** CVSSv3 scope */
+ scope?: (grafeas.v1.CVSSv3.Scope|keyof typeof grafeas.v1.CVSSv3.Scope|null);
+
+ /** CVSSv3 confidentialityImpact */
+ confidentialityImpact?: (grafeas.v1.CVSSv3.Impact|keyof typeof grafeas.v1.CVSSv3.Impact|null);
+
+ /** CVSSv3 integrityImpact */
+ integrityImpact?: (grafeas.v1.CVSSv3.Impact|keyof typeof grafeas.v1.CVSSv3.Impact|null);
+
+ /** CVSSv3 availabilityImpact */
+ availabilityImpact?: (grafeas.v1.CVSSv3.Impact|keyof typeof grafeas.v1.CVSSv3.Impact|null);
+ }
+
+ /** Represents a CVSSv3. */
+ class CVSSv3 implements ICVSSv3 {
+
+ /**
+ * Constructs a new CVSSv3.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICVSSv3);
+
+ /** CVSSv3 baseScore. */
+ public baseScore: number;
+
+ /** CVSSv3 exploitabilityScore. */
+ public exploitabilityScore: number;
+
+ /** CVSSv3 impactScore. */
+ public impactScore: number;
+
+ /** CVSSv3 attackVector. */
+ public attackVector: (grafeas.v1.CVSSv3.AttackVector|keyof typeof grafeas.v1.CVSSv3.AttackVector);
+
+ /** CVSSv3 attackComplexity. */
+ public attackComplexity: (grafeas.v1.CVSSv3.AttackComplexity|keyof typeof grafeas.v1.CVSSv3.AttackComplexity);
+
+ /** CVSSv3 privilegesRequired. */
+ public privilegesRequired: (grafeas.v1.CVSSv3.PrivilegesRequired|keyof typeof grafeas.v1.CVSSv3.PrivilegesRequired);
+
+ /** CVSSv3 userInteraction. */
+ public userInteraction: (grafeas.v1.CVSSv3.UserInteraction|keyof typeof grafeas.v1.CVSSv3.UserInteraction);
+
+ /** CVSSv3 scope. */
+ public scope: (grafeas.v1.CVSSv3.Scope|keyof typeof grafeas.v1.CVSSv3.Scope);
+
+ /** CVSSv3 confidentialityImpact. */
+ public confidentialityImpact: (grafeas.v1.CVSSv3.Impact|keyof typeof grafeas.v1.CVSSv3.Impact);
+
+ /** CVSSv3 integrityImpact. */
+ public integrityImpact: (grafeas.v1.CVSSv3.Impact|keyof typeof grafeas.v1.CVSSv3.Impact);
+
+ /** CVSSv3 availabilityImpact. */
+ public availabilityImpact: (grafeas.v1.CVSSv3.Impact|keyof typeof grafeas.v1.CVSSv3.Impact);
+
+ /**
+ * Creates a new CVSSv3 instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CVSSv3 instance
+ */
+ public static create(properties?: grafeas.v1.ICVSSv3): grafeas.v1.CVSSv3;
+
+ /**
+ * Encodes the specified CVSSv3 message. Does not implicitly {@link grafeas.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: grafeas.v1.ICVSSv3, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CVSSv3 message, length delimited. Does not implicitly {@link grafeas.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: grafeas.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): grafeas.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)): grafeas.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 }): grafeas.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: grafeas.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 CVSS. */
+ interface ICVSS {
+
+ /** CVSS baseScore */
+ baseScore?: (number|null);
+
+ /** CVSS exploitabilityScore */
+ exploitabilityScore?: (number|null);
+
+ /** CVSS impactScore */
+ impactScore?: (number|null);
+
+ /** CVSS attackVector */
+ attackVector?: (grafeas.v1.CVSS.AttackVector|keyof typeof grafeas.v1.CVSS.AttackVector|null);
+
+ /** CVSS attackComplexity */
+ attackComplexity?: (grafeas.v1.CVSS.AttackComplexity|keyof typeof grafeas.v1.CVSS.AttackComplexity|null);
+
+ /** CVSS authentication */
+ authentication?: (grafeas.v1.CVSS.Authentication|keyof typeof grafeas.v1.CVSS.Authentication|null);
+
+ /** CVSS privilegesRequired */
+ privilegesRequired?: (grafeas.v1.CVSS.PrivilegesRequired|keyof typeof grafeas.v1.CVSS.PrivilegesRequired|null);
+
+ /** CVSS userInteraction */
+ userInteraction?: (grafeas.v1.CVSS.UserInteraction|keyof typeof grafeas.v1.CVSS.UserInteraction|null);
+
+ /** CVSS scope */
+ scope?: (grafeas.v1.CVSS.Scope|keyof typeof grafeas.v1.CVSS.Scope|null);
+
+ /** CVSS confidentialityImpact */
+ confidentialityImpact?: (grafeas.v1.CVSS.Impact|keyof typeof grafeas.v1.CVSS.Impact|null);
+
+ /** CVSS integrityImpact */
+ integrityImpact?: (grafeas.v1.CVSS.Impact|keyof typeof grafeas.v1.CVSS.Impact|null);
+
+ /** CVSS availabilityImpact */
+ availabilityImpact?: (grafeas.v1.CVSS.Impact|keyof typeof grafeas.v1.CVSS.Impact|null);
+ }
+
+ /** Represents a CVSS. */
+ class CVSS implements ICVSS {
+
+ /**
+ * Constructs a new CVSS.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICVSS);
+
+ /** CVSS baseScore. */
+ public baseScore: number;
+
+ /** CVSS exploitabilityScore. */
+ public exploitabilityScore: number;
+
+ /** CVSS impactScore. */
+ public impactScore: number;
+
+ /** CVSS attackVector. */
+ public attackVector: (grafeas.v1.CVSS.AttackVector|keyof typeof grafeas.v1.CVSS.AttackVector);
+
+ /** CVSS attackComplexity. */
+ public attackComplexity: (grafeas.v1.CVSS.AttackComplexity|keyof typeof grafeas.v1.CVSS.AttackComplexity);
+
+ /** CVSS authentication. */
+ public authentication: (grafeas.v1.CVSS.Authentication|keyof typeof grafeas.v1.CVSS.Authentication);
+
+ /** CVSS privilegesRequired. */
+ public privilegesRequired: (grafeas.v1.CVSS.PrivilegesRequired|keyof typeof grafeas.v1.CVSS.PrivilegesRequired);
+
+ /** CVSS userInteraction. */
+ public userInteraction: (grafeas.v1.CVSS.UserInteraction|keyof typeof grafeas.v1.CVSS.UserInteraction);
+
+ /** CVSS scope. */
+ public scope: (grafeas.v1.CVSS.Scope|keyof typeof grafeas.v1.CVSS.Scope);
+
+ /** CVSS confidentialityImpact. */
+ public confidentialityImpact: (grafeas.v1.CVSS.Impact|keyof typeof grafeas.v1.CVSS.Impact);
+
+ /** CVSS integrityImpact. */
+ public integrityImpact: (grafeas.v1.CVSS.Impact|keyof typeof grafeas.v1.CVSS.Impact);
+
+ /** CVSS availabilityImpact. */
+ public availabilityImpact: (grafeas.v1.CVSS.Impact|keyof typeof grafeas.v1.CVSS.Impact);
+
+ /**
+ * Creates a new CVSS instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CVSS instance
+ */
+ public static create(properties?: grafeas.v1.ICVSS): grafeas.v1.CVSS;
+
+ /**
+ * Encodes the specified CVSS message. Does not implicitly {@link grafeas.v1.CVSS.verify|verify} messages.
+ * @param message CVSS message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ICVSS, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CVSS message, length delimited. Does not implicitly {@link grafeas.v1.CVSS.verify|verify} messages.
+ * @param message CVSS message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ICVSS, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CVSS message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CVSS
+ * @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): grafeas.v1.CVSS;
+
+ /**
+ * Decodes a CVSS message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CVSS
+ * @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)): grafeas.v1.CVSS;
+
+ /**
+ * Verifies a CVSS 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 CVSS message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CVSS
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.CVSS;
+
+ /**
+ * Creates a plain object from a CVSS message. Also converts values to other types if specified.
+ * @param message CVSS
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.CVSS, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CVSS to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CVSS
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace CVSS {
+
+ /** 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
+ }
+
+ /** Authentication enum. */
+ enum Authentication {
+ AUTHENTICATION_UNSPECIFIED = 0,
+ AUTHENTICATION_MULTIPLE = 1,
+ AUTHENTICATION_SINGLE = 2,
+ AUTHENTICATION_NONE = 3
+ }
+
+ /** 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
+ }
+ }
+
+ /** CVSSVersion enum. */
+ enum CVSSVersion {
+ CVSS_VERSION_UNSPECIFIED = 0,
+ CVSS_VERSION_2 = 1,
+ CVSS_VERSION_3 = 2
+ }
+
+ /** Properties of a DeploymentNote. */
+ interface IDeploymentNote {
+
+ /** DeploymentNote resourceUri */
+ resourceUri?: (string[]|null);
+ }
+
+ /** Represents a DeploymentNote. */
+ class DeploymentNote implements IDeploymentNote {
+
+ /**
+ * Constructs a new DeploymentNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDeploymentNote);
+
+ /** DeploymentNote resourceUri. */
+ public resourceUri: string[];
+
+ /**
+ * Creates a new DeploymentNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeploymentNote instance
+ */
+ public static create(properties?: grafeas.v1.IDeploymentNote): grafeas.v1.DeploymentNote;
+
+ /**
+ * Encodes the specified DeploymentNote message. Does not implicitly {@link grafeas.v1.DeploymentNote.verify|verify} messages.
+ * @param message DeploymentNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDeploymentNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeploymentNote message, length delimited. Does not implicitly {@link grafeas.v1.DeploymentNote.verify|verify} messages.
+ * @param message DeploymentNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDeploymentNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeploymentNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeploymentNote
+ * @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): grafeas.v1.DeploymentNote;
+
+ /**
+ * Decodes a DeploymentNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeploymentNote
+ * @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)): grafeas.v1.DeploymentNote;
+
+ /**
+ * Verifies a DeploymentNote 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 DeploymentNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeploymentNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DeploymentNote;
+
+ /**
+ * Creates a plain object from a DeploymentNote message. Also converts values to other types if specified.
+ * @param message DeploymentNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DeploymentNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeploymentNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeploymentNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeploymentOccurrence. */
+ interface IDeploymentOccurrence {
+
+ /** DeploymentOccurrence userEmail */
+ userEmail?: (string|null);
+
+ /** DeploymentOccurrence deployTime */
+ deployTime?: (google.protobuf.ITimestamp|null);
+
+ /** DeploymentOccurrence undeployTime */
+ undeployTime?: (google.protobuf.ITimestamp|null);
+
+ /** DeploymentOccurrence config */
+ config?: (string|null);
+
+ /** DeploymentOccurrence address */
+ address?: (string|null);
+
+ /** DeploymentOccurrence resourceUri */
+ resourceUri?: (string[]|null);
+
+ /** DeploymentOccurrence platform */
+ platform?: (grafeas.v1.DeploymentOccurrence.Platform|keyof typeof grafeas.v1.DeploymentOccurrence.Platform|null);
+ }
+
+ /** Represents a DeploymentOccurrence. */
+ class DeploymentOccurrence implements IDeploymentOccurrence {
+
+ /**
+ * Constructs a new DeploymentOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDeploymentOccurrence);
+
+ /** DeploymentOccurrence userEmail. */
+ public userEmail: string;
+
+ /** DeploymentOccurrence deployTime. */
+ public deployTime?: (google.protobuf.ITimestamp|null);
+
+ /** DeploymentOccurrence undeployTime. */
+ public undeployTime?: (google.protobuf.ITimestamp|null);
+
+ /** DeploymentOccurrence config. */
+ public config: string;
+
+ /** DeploymentOccurrence address. */
+ public address: string;
+
+ /** DeploymentOccurrence resourceUri. */
+ public resourceUri: string[];
+
+ /** DeploymentOccurrence platform. */
+ public platform: (grafeas.v1.DeploymentOccurrence.Platform|keyof typeof grafeas.v1.DeploymentOccurrence.Platform);
+
+ /**
+ * Creates a new DeploymentOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeploymentOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IDeploymentOccurrence): grafeas.v1.DeploymentOccurrence;
+
+ /**
+ * Encodes the specified DeploymentOccurrence message. Does not implicitly {@link grafeas.v1.DeploymentOccurrence.verify|verify} messages.
+ * @param message DeploymentOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDeploymentOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeploymentOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.DeploymentOccurrence.verify|verify} messages.
+ * @param message DeploymentOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDeploymentOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeploymentOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeploymentOccurrence
+ * @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): grafeas.v1.DeploymentOccurrence;
+
+ /**
+ * Decodes a DeploymentOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeploymentOccurrence
+ * @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)): grafeas.v1.DeploymentOccurrence;
+
+ /**
+ * Verifies a DeploymentOccurrence 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 DeploymentOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeploymentOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DeploymentOccurrence;
+
+ /**
+ * Creates a plain object from a DeploymentOccurrence message. Also converts values to other types if specified.
+ * @param message DeploymentOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DeploymentOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeploymentOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeploymentOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DeploymentOccurrence {
+
+ /** Platform enum. */
+ enum Platform {
+ PLATFORM_UNSPECIFIED = 0,
+ GKE = 1,
+ FLEX = 2,
+ CUSTOM = 3
+ }
+ }
+
+ /** Properties of a DiscoveryNote. */
+ interface IDiscoveryNote {
+
+ /** DiscoveryNote analysisKind */
+ analysisKind?: (grafeas.v1.NoteKind|keyof typeof grafeas.v1.NoteKind|null);
+ }
+
+ /** Represents a DiscoveryNote. */
+ class DiscoveryNote implements IDiscoveryNote {
+
+ /**
+ * Constructs a new DiscoveryNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDiscoveryNote);
+
+ /** DiscoveryNote analysisKind. */
+ public analysisKind: (grafeas.v1.NoteKind|keyof typeof grafeas.v1.NoteKind);
+
+ /**
+ * Creates a new DiscoveryNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DiscoveryNote instance
+ */
+ public static create(properties?: grafeas.v1.IDiscoveryNote): grafeas.v1.DiscoveryNote;
+
+ /**
+ * Encodes the specified DiscoveryNote message. Does not implicitly {@link grafeas.v1.DiscoveryNote.verify|verify} messages.
+ * @param message DiscoveryNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDiscoveryNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DiscoveryNote message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryNote.verify|verify} messages.
+ * @param message DiscoveryNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDiscoveryNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DiscoveryNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DiscoveryNote
+ * @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): grafeas.v1.DiscoveryNote;
+
+ /**
+ * Decodes a DiscoveryNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DiscoveryNote
+ * @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)): grafeas.v1.DiscoveryNote;
+
+ /**
+ * Verifies a DiscoveryNote 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 DiscoveryNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DiscoveryNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DiscoveryNote;
+
+ /**
+ * Creates a plain object from a DiscoveryNote message. Also converts values to other types if specified.
+ * @param message DiscoveryNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DiscoveryNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DiscoveryNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DiscoveryNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DiscoveryOccurrence. */
+ interface IDiscoveryOccurrence {
+
+ /** DiscoveryOccurrence continuousAnalysis */
+ continuousAnalysis?: (grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis|keyof typeof grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis|null);
+
+ /** DiscoveryOccurrence analysisStatus */
+ analysisStatus?: (grafeas.v1.DiscoveryOccurrence.AnalysisStatus|keyof typeof grafeas.v1.DiscoveryOccurrence.AnalysisStatus|null);
+
+ /** DiscoveryOccurrence analysisCompleted */
+ analysisCompleted?: (grafeas.v1.DiscoveryOccurrence.IAnalysisCompleted|null);
+
+ /** DiscoveryOccurrence analysisError */
+ analysisError?: (google.rpc.IStatus[]|null);
+
+ /** DiscoveryOccurrence analysisStatusError */
+ analysisStatusError?: (google.rpc.IStatus|null);
+
+ /** DiscoveryOccurrence cpe */
+ cpe?: (string|null);
+
+ /** DiscoveryOccurrence lastScanTime */
+ lastScanTime?: (google.protobuf.ITimestamp|null);
+
+ /** DiscoveryOccurrence archiveTime */
+ archiveTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a DiscoveryOccurrence. */
+ class DiscoveryOccurrence implements IDiscoveryOccurrence {
+
+ /**
+ * Constructs a new DiscoveryOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDiscoveryOccurrence);
+
+ /** DiscoveryOccurrence continuousAnalysis. */
+ public continuousAnalysis: (grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis|keyof typeof grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis);
+
+ /** DiscoveryOccurrence analysisStatus. */
+ public analysisStatus: (grafeas.v1.DiscoveryOccurrence.AnalysisStatus|keyof typeof grafeas.v1.DiscoveryOccurrence.AnalysisStatus);
+
+ /** DiscoveryOccurrence analysisCompleted. */
+ public analysisCompleted?: (grafeas.v1.DiscoveryOccurrence.IAnalysisCompleted|null);
+
+ /** DiscoveryOccurrence analysisError. */
+ public analysisError: google.rpc.IStatus[];
+
+ /** DiscoveryOccurrence analysisStatusError. */
+ public analysisStatusError?: (google.rpc.IStatus|null);
+
+ /** DiscoveryOccurrence cpe. */
+ public cpe: string;
+
+ /** DiscoveryOccurrence lastScanTime. */
+ public lastScanTime?: (google.protobuf.ITimestamp|null);
+
+ /** DiscoveryOccurrence archiveTime. */
+ public archiveTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new DiscoveryOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DiscoveryOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IDiscoveryOccurrence): grafeas.v1.DiscoveryOccurrence;
+
+ /**
+ * Encodes the specified DiscoveryOccurrence message. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.verify|verify} messages.
+ * @param message DiscoveryOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDiscoveryOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DiscoveryOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.verify|verify} messages.
+ * @param message DiscoveryOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDiscoveryOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DiscoveryOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DiscoveryOccurrence
+ * @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): grafeas.v1.DiscoveryOccurrence;
+
+ /**
+ * Decodes a DiscoveryOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DiscoveryOccurrence
+ * @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)): grafeas.v1.DiscoveryOccurrence;
+
+ /**
+ * Verifies a DiscoveryOccurrence 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 DiscoveryOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DiscoveryOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DiscoveryOccurrence;
+
+ /**
+ * Creates a plain object from a DiscoveryOccurrence message. Also converts values to other types if specified.
+ * @param message DiscoveryOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DiscoveryOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DiscoveryOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DiscoveryOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DiscoveryOccurrence {
+
+ /** ContinuousAnalysis enum. */
+ enum ContinuousAnalysis {
+ CONTINUOUS_ANALYSIS_UNSPECIFIED = 0,
+ ACTIVE = 1,
+ INACTIVE = 2
+ }
+
+ /** AnalysisStatus enum. */
+ enum AnalysisStatus {
+ ANALYSIS_STATUS_UNSPECIFIED = 0,
+ PENDING = 1,
+ SCANNING = 2,
+ FINISHED_SUCCESS = 3,
+ COMPLETE = 3,
+ FINISHED_FAILED = 4,
+ FINISHED_UNSUPPORTED = 5
+ }
+
+ /** Properties of an AnalysisCompleted. */
+ interface IAnalysisCompleted {
+
+ /** AnalysisCompleted analysisType */
+ analysisType?: (string[]|null);
+ }
+
+ /** Represents an AnalysisCompleted. */
+ class AnalysisCompleted implements IAnalysisCompleted {
+
+ /**
+ * Constructs a new AnalysisCompleted.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.DiscoveryOccurrence.IAnalysisCompleted);
+
+ /** AnalysisCompleted analysisType. */
+ public analysisType: string[];
+
+ /**
+ * Creates a new AnalysisCompleted instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AnalysisCompleted instance
+ */
+ public static create(properties?: grafeas.v1.DiscoveryOccurrence.IAnalysisCompleted): grafeas.v1.DiscoveryOccurrence.AnalysisCompleted;
+
+ /**
+ * Encodes the specified AnalysisCompleted message. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.verify|verify} messages.
+ * @param message AnalysisCompleted message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.DiscoveryOccurrence.IAnalysisCompleted, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AnalysisCompleted message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.AnalysisCompleted.verify|verify} messages.
+ * @param message AnalysisCompleted message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.DiscoveryOccurrence.IAnalysisCompleted, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AnalysisCompleted message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AnalysisCompleted
+ * @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): grafeas.v1.DiscoveryOccurrence.AnalysisCompleted;
+
+ /**
+ * Decodes an AnalysisCompleted message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AnalysisCompleted
+ * @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)): grafeas.v1.DiscoveryOccurrence.AnalysisCompleted;
+
+ /**
+ * Verifies an AnalysisCompleted 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 AnalysisCompleted message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AnalysisCompleted
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DiscoveryOccurrence.AnalysisCompleted;
+
+ /**
+ * Creates a plain object from an AnalysisCompleted message. Also converts values to other types if specified.
+ * @param message AnalysisCompleted
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DiscoveryOccurrence.AnalysisCompleted, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AnalysisCompleted to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AnalysisCompleted
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a DSSEAttestationNote. */
+ interface IDSSEAttestationNote {
+
+ /** DSSEAttestationNote hint */
+ hint?: (grafeas.v1.DSSEAttestationNote.IDSSEHint|null);
+ }
+
+ /** Represents a DSSEAttestationNote. */
+ class DSSEAttestationNote implements IDSSEAttestationNote {
+
+ /**
+ * Constructs a new DSSEAttestationNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDSSEAttestationNote);
+
+ /** DSSEAttestationNote hint. */
+ public hint?: (grafeas.v1.DSSEAttestationNote.IDSSEHint|null);
+
+ /**
+ * Creates a new DSSEAttestationNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DSSEAttestationNote instance
+ */
+ public static create(properties?: grafeas.v1.IDSSEAttestationNote): grafeas.v1.DSSEAttestationNote;
+
+ /**
+ * Encodes the specified DSSEAttestationNote message. Does not implicitly {@link grafeas.v1.DSSEAttestationNote.verify|verify} messages.
+ * @param message DSSEAttestationNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDSSEAttestationNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DSSEAttestationNote message, length delimited. Does not implicitly {@link grafeas.v1.DSSEAttestationNote.verify|verify} messages.
+ * @param message DSSEAttestationNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDSSEAttestationNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DSSEAttestationNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DSSEAttestationNote
+ * @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): grafeas.v1.DSSEAttestationNote;
+
+ /**
+ * Decodes a DSSEAttestationNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DSSEAttestationNote
+ * @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)): grafeas.v1.DSSEAttestationNote;
+
+ /**
+ * Verifies a DSSEAttestationNote 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 DSSEAttestationNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DSSEAttestationNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DSSEAttestationNote;
+
+ /**
+ * Creates a plain object from a DSSEAttestationNote message. Also converts values to other types if specified.
+ * @param message DSSEAttestationNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DSSEAttestationNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DSSEAttestationNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DSSEAttestationNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DSSEAttestationNote {
+
+ /** Properties of a DSSEHint. */
+ interface IDSSEHint {
+
+ /** DSSEHint humanReadableName */
+ humanReadableName?: (string|null);
+ }
+
+ /** Represents a DSSEHint. */
+ class DSSEHint implements IDSSEHint {
+
+ /**
+ * Constructs a new DSSEHint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.DSSEAttestationNote.IDSSEHint);
+
+ /** DSSEHint humanReadableName. */
+ public humanReadableName: string;
+
+ /**
+ * Creates a new DSSEHint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DSSEHint instance
+ */
+ public static create(properties?: grafeas.v1.DSSEAttestationNote.IDSSEHint): grafeas.v1.DSSEAttestationNote.DSSEHint;
+
+ /**
+ * Encodes the specified DSSEHint message. Does not implicitly {@link grafeas.v1.DSSEAttestationNote.DSSEHint.verify|verify} messages.
+ * @param message DSSEHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.DSSEAttestationNote.IDSSEHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DSSEHint message, length delimited. Does not implicitly {@link grafeas.v1.DSSEAttestationNote.DSSEHint.verify|verify} messages.
+ * @param message DSSEHint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.DSSEAttestationNote.IDSSEHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DSSEHint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DSSEHint
+ * @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): grafeas.v1.DSSEAttestationNote.DSSEHint;
+
+ /**
+ * Decodes a DSSEHint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DSSEHint
+ * @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)): grafeas.v1.DSSEAttestationNote.DSSEHint;
+
+ /**
+ * Verifies a DSSEHint 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 DSSEHint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DSSEHint
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DSSEAttestationNote.DSSEHint;
+
+ /**
+ * Creates a plain object from a DSSEHint message. Also converts values to other types if specified.
+ * @param message DSSEHint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DSSEAttestationNote.DSSEHint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DSSEHint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DSSEHint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a DSSEAttestationOccurrence. */
+ interface IDSSEAttestationOccurrence {
+
+ /** DSSEAttestationOccurrence envelope */
+ envelope?: (grafeas.v1.IEnvelope|null);
+
+ /** DSSEAttestationOccurrence statement */
+ statement?: (grafeas.v1.IInTotoStatement|null);
+ }
+
+ /** Represents a DSSEAttestationOccurrence. */
+ class DSSEAttestationOccurrence implements IDSSEAttestationOccurrence {
+
+ /**
+ * Constructs a new DSSEAttestationOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDSSEAttestationOccurrence);
+
+ /** DSSEAttestationOccurrence envelope. */
+ public envelope?: (grafeas.v1.IEnvelope|null);
+
+ /** DSSEAttestationOccurrence statement. */
+ public statement?: (grafeas.v1.IInTotoStatement|null);
+
+ /** DSSEAttestationOccurrence decodedPayload. */
+ public decodedPayload?: "statement";
+
+ /**
+ * Creates a new DSSEAttestationOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DSSEAttestationOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IDSSEAttestationOccurrence): grafeas.v1.DSSEAttestationOccurrence;
+
+ /**
+ * Encodes the specified DSSEAttestationOccurrence message. Does not implicitly {@link grafeas.v1.DSSEAttestationOccurrence.verify|verify} messages.
+ * @param message DSSEAttestationOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDSSEAttestationOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DSSEAttestationOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.DSSEAttestationOccurrence.verify|verify} messages.
+ * @param message DSSEAttestationOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDSSEAttestationOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DSSEAttestationOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DSSEAttestationOccurrence
+ * @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): grafeas.v1.DSSEAttestationOccurrence;
+
+ /**
+ * Decodes a DSSEAttestationOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DSSEAttestationOccurrence
+ * @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)): grafeas.v1.DSSEAttestationOccurrence;
+
+ /**
+ * Verifies a DSSEAttestationOccurrence 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 DSSEAttestationOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DSSEAttestationOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DSSEAttestationOccurrence;
+
+ /**
+ * Creates a plain object from a DSSEAttestationOccurrence message. Also converts values to other types if specified.
+ * @param message DSSEAttestationOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DSSEAttestationOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DSSEAttestationOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DSSEAttestationOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Represents a Grafeas */
+ class Grafeas extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new Grafeas 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 Grafeas 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): Grafeas;
+
+ /**
+ * Calls GetOccurrence.
+ * @param request GetOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Occurrence
+ */
+ public getOccurrence(request: grafeas.v1.IGetOccurrenceRequest, callback: grafeas.v1.Grafeas.GetOccurrenceCallback): void;
+
+ /**
+ * Calls GetOccurrence.
+ * @param request GetOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public getOccurrence(request: grafeas.v1.IGetOccurrenceRequest): Promise;
+
+ /**
+ * Calls ListOccurrences.
+ * @param request ListOccurrencesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListOccurrencesResponse
+ */
+ public listOccurrences(request: grafeas.v1.IListOccurrencesRequest, callback: grafeas.v1.Grafeas.ListOccurrencesCallback): void;
+
+ /**
+ * Calls ListOccurrences.
+ * @param request ListOccurrencesRequest message or plain object
+ * @returns Promise
+ */
+ public listOccurrences(request: grafeas.v1.IListOccurrencesRequest): Promise;
+
+ /**
+ * Calls DeleteOccurrence.
+ * @param request DeleteOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteOccurrence(request: grafeas.v1.IDeleteOccurrenceRequest, callback: grafeas.v1.Grafeas.DeleteOccurrenceCallback): void;
+
+ /**
+ * Calls DeleteOccurrence.
+ * @param request DeleteOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public deleteOccurrence(request: grafeas.v1.IDeleteOccurrenceRequest): Promise;
+
+ /**
+ * Calls CreateOccurrence.
+ * @param request CreateOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Occurrence
+ */
+ public createOccurrence(request: grafeas.v1.ICreateOccurrenceRequest, callback: grafeas.v1.Grafeas.CreateOccurrenceCallback): void;
+
+ /**
+ * Calls CreateOccurrence.
+ * @param request CreateOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public createOccurrence(request: grafeas.v1.ICreateOccurrenceRequest): Promise;
+
+ /**
+ * Calls BatchCreateOccurrences.
+ * @param request BatchCreateOccurrencesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchCreateOccurrencesResponse
+ */
+ public batchCreateOccurrences(request: grafeas.v1.IBatchCreateOccurrencesRequest, callback: grafeas.v1.Grafeas.BatchCreateOccurrencesCallback): void;
+
+ /**
+ * Calls BatchCreateOccurrences.
+ * @param request BatchCreateOccurrencesRequest message or plain object
+ * @returns Promise
+ */
+ public batchCreateOccurrences(request: grafeas.v1.IBatchCreateOccurrencesRequest): Promise;
+
+ /**
+ * Calls UpdateOccurrence.
+ * @param request UpdateOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Occurrence
+ */
+ public updateOccurrence(request: grafeas.v1.IUpdateOccurrenceRequest, callback: grafeas.v1.Grafeas.UpdateOccurrenceCallback): void;
+
+ /**
+ * Calls UpdateOccurrence.
+ * @param request UpdateOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public updateOccurrence(request: grafeas.v1.IUpdateOccurrenceRequest): Promise;
+
+ /**
+ * Calls GetOccurrenceNote.
+ * @param request GetOccurrenceNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public getOccurrenceNote(request: grafeas.v1.IGetOccurrenceNoteRequest, callback: grafeas.v1.Grafeas.GetOccurrenceNoteCallback): void;
+
+ /**
+ * Calls GetOccurrenceNote.
+ * @param request GetOccurrenceNoteRequest message or plain object
+ * @returns Promise
+ */
+ public getOccurrenceNote(request: grafeas.v1.IGetOccurrenceNoteRequest): Promise;
+
+ /**
+ * Calls GetNote.
+ * @param request GetNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public getNote(request: grafeas.v1.IGetNoteRequest, callback: grafeas.v1.Grafeas.GetNoteCallback): void;
+
+ /**
+ * Calls GetNote.
+ * @param request GetNoteRequest message or plain object
+ * @returns Promise
+ */
+ public getNote(request: grafeas.v1.IGetNoteRequest): Promise;
+
+ /**
+ * Calls ListNotes.
+ * @param request ListNotesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNotesResponse
+ */
+ public listNotes(request: grafeas.v1.IListNotesRequest, callback: grafeas.v1.Grafeas.ListNotesCallback): void;
+
+ /**
+ * Calls ListNotes.
+ * @param request ListNotesRequest message or plain object
+ * @returns Promise
+ */
+ public listNotes(request: grafeas.v1.IListNotesRequest): Promise;
+
+ /**
+ * Calls DeleteNote.
+ * @param request DeleteNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteNote(request: grafeas.v1.IDeleteNoteRequest, callback: grafeas.v1.Grafeas.DeleteNoteCallback): void;
+
+ /**
+ * Calls DeleteNote.
+ * @param request DeleteNoteRequest message or plain object
+ * @returns Promise
+ */
+ public deleteNote(request: grafeas.v1.IDeleteNoteRequest): Promise;
+
+ /**
+ * Calls CreateNote.
+ * @param request CreateNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public createNote(request: grafeas.v1.ICreateNoteRequest, callback: grafeas.v1.Grafeas.CreateNoteCallback): void;
+
+ /**
+ * Calls CreateNote.
+ * @param request CreateNoteRequest message or plain object
+ * @returns Promise
+ */
+ public createNote(request: grafeas.v1.ICreateNoteRequest): Promise;
+
+ /**
+ * Calls BatchCreateNotes.
+ * @param request BatchCreateNotesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchCreateNotesResponse
+ */
+ public batchCreateNotes(request: grafeas.v1.IBatchCreateNotesRequest, callback: grafeas.v1.Grafeas.BatchCreateNotesCallback): void;
+
+ /**
+ * Calls BatchCreateNotes.
+ * @param request BatchCreateNotesRequest message or plain object
+ * @returns Promise
+ */
+ public batchCreateNotes(request: grafeas.v1.IBatchCreateNotesRequest): Promise;
+
+ /**
+ * Calls UpdateNote.
+ * @param request UpdateNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public updateNote(request: grafeas.v1.IUpdateNoteRequest, callback: grafeas.v1.Grafeas.UpdateNoteCallback): void;
+
+ /**
+ * Calls UpdateNote.
+ * @param request UpdateNoteRequest message or plain object
+ * @returns Promise
+ */
+ public updateNote(request: grafeas.v1.IUpdateNoteRequest): Promise;
+
+ /**
+ * Calls ListNoteOccurrences.
+ * @param request ListNoteOccurrencesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNoteOccurrencesResponse
+ */
+ public listNoteOccurrences(request: grafeas.v1.IListNoteOccurrencesRequest, callback: grafeas.v1.Grafeas.ListNoteOccurrencesCallback): void;
+
+ /**
+ * Calls ListNoteOccurrences.
+ * @param request ListNoteOccurrencesRequest message or plain object
+ * @returns Promise
+ */
+ public listNoteOccurrences(request: grafeas.v1.IListNoteOccurrencesRequest): Promise;
+ }
+
+ namespace Grafeas {
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|getOccurrence}.
+ * @param error Error, if any
+ * @param [response] Occurrence
+ */
+ type GetOccurrenceCallback = (error: (Error|null), response?: grafeas.v1.Occurrence) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|listOccurrences}.
+ * @param error Error, if any
+ * @param [response] ListOccurrencesResponse
+ */
+ type ListOccurrencesCallback = (error: (Error|null), response?: grafeas.v1.ListOccurrencesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|deleteOccurrence}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteOccurrenceCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|createOccurrence}.
+ * @param error Error, if any
+ * @param [response] Occurrence
+ */
+ type CreateOccurrenceCallback = (error: (Error|null), response?: grafeas.v1.Occurrence) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|batchCreateOccurrences}.
+ * @param error Error, if any
+ * @param [response] BatchCreateOccurrencesResponse
+ */
+ type BatchCreateOccurrencesCallback = (error: (Error|null), response?: grafeas.v1.BatchCreateOccurrencesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|updateOccurrence}.
+ * @param error Error, if any
+ * @param [response] Occurrence
+ */
+ type UpdateOccurrenceCallback = (error: (Error|null), response?: grafeas.v1.Occurrence) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|getOccurrenceNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type GetOccurrenceNoteCallback = (error: (Error|null), response?: grafeas.v1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|getNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type GetNoteCallback = (error: (Error|null), response?: grafeas.v1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|listNotes}.
+ * @param error Error, if any
+ * @param [response] ListNotesResponse
+ */
+ type ListNotesCallback = (error: (Error|null), response?: grafeas.v1.ListNotesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|deleteNote}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteNoteCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|createNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type CreateNoteCallback = (error: (Error|null), response?: grafeas.v1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|batchCreateNotes}.
+ * @param error Error, if any
+ * @param [response] BatchCreateNotesResponse
+ */
+ type BatchCreateNotesCallback = (error: (Error|null), response?: grafeas.v1.BatchCreateNotesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|updateNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type UpdateNoteCallback = (error: (Error|null), response?: grafeas.v1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1.Grafeas|listNoteOccurrences}.
+ * @param error Error, if any
+ * @param [response] ListNoteOccurrencesResponse
+ */
+ type ListNoteOccurrencesCallback = (error: (Error|null), response?: grafeas.v1.ListNoteOccurrencesResponse) => void;
+ }
+
+ /** Properties of an Occurrence. */
+ interface IOccurrence {
+
+ /** Occurrence name */
+ name?: (string|null);
+
+ /** Occurrence resourceUri */
+ resourceUri?: (string|null);
+
+ /** Occurrence noteName */
+ noteName?: (string|null);
+
+ /** Occurrence kind */
+ kind?: (grafeas.v1.NoteKind|keyof typeof grafeas.v1.NoteKind|null);
+
+ /** Occurrence remediation */
+ remediation?: (string|null);
+
+ /** Occurrence createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence vulnerability */
+ vulnerability?: (grafeas.v1.IVulnerabilityOccurrence|null);
+
+ /** Occurrence build */
+ build?: (grafeas.v1.IBuildOccurrence|null);
+
+ /** Occurrence image */
+ image?: (grafeas.v1.IImageOccurrence|null);
+
+ /** Occurrence package */
+ "package"?: (grafeas.v1.IPackageOccurrence|null);
+
+ /** Occurrence deployment */
+ deployment?: (grafeas.v1.IDeploymentOccurrence|null);
+
+ /** Occurrence discovery */
+ discovery?: (grafeas.v1.IDiscoveryOccurrence|null);
+
+ /** Occurrence attestation */
+ attestation?: (grafeas.v1.IAttestationOccurrence|null);
+
+ /** Occurrence upgrade */
+ upgrade?: (grafeas.v1.IUpgradeOccurrence|null);
+
+ /** Occurrence compliance */
+ compliance?: (grafeas.v1.IComplianceOccurrence|null);
+
+ /** Occurrence dsseAttestation */
+ dsseAttestation?: (grafeas.v1.IDSSEAttestationOccurrence|null);
+
+ /** Occurrence envelope */
+ envelope?: (grafeas.v1.IEnvelope|null);
+ }
+
+ /** Represents an Occurrence. */
+ class Occurrence implements IOccurrence {
+
+ /**
+ * Constructs a new Occurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IOccurrence);
+
+ /** Occurrence name. */
+ public name: string;
+
+ /** Occurrence resourceUri. */
+ public resourceUri: string;
+
+ /** Occurrence noteName. */
+ public noteName: string;
+
+ /** Occurrence kind. */
+ public kind: (grafeas.v1.NoteKind|keyof typeof grafeas.v1.NoteKind);
+
+ /** Occurrence remediation. */
+ public remediation: string;
+
+ /** Occurrence createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence vulnerability. */
+ public vulnerability?: (grafeas.v1.IVulnerabilityOccurrence|null);
+
+ /** Occurrence build. */
+ public build?: (grafeas.v1.IBuildOccurrence|null);
+
+ /** Occurrence image. */
+ public image?: (grafeas.v1.IImageOccurrence|null);
+
+ /** Occurrence package. */
+ public package?: (grafeas.v1.IPackageOccurrence|null);
+
+ /** Occurrence deployment. */
+ public deployment?: (grafeas.v1.IDeploymentOccurrence|null);
+
+ /** Occurrence discovery. */
+ public discovery?: (grafeas.v1.IDiscoveryOccurrence|null);
+
+ /** Occurrence attestation. */
+ public attestation?: (grafeas.v1.IAttestationOccurrence|null);
+
+ /** Occurrence upgrade. */
+ public upgrade?: (grafeas.v1.IUpgradeOccurrence|null);
+
+ /** Occurrence compliance. */
+ public compliance?: (grafeas.v1.IComplianceOccurrence|null);
+
+ /** Occurrence dsseAttestation. */
+ public dsseAttestation?: (grafeas.v1.IDSSEAttestationOccurrence|null);
+
+ /** Occurrence envelope. */
+ public envelope?: (grafeas.v1.IEnvelope|null);
+
+ /** Occurrence details. */
+ public details?: ("vulnerability"|"build"|"image"|"package"|"deployment"|"discovery"|"attestation"|"upgrade"|"compliance"|"dsseAttestation");
+
+ /**
+ * Creates a new Occurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Occurrence instance
+ */
+ public static create(properties?: grafeas.v1.IOccurrence): grafeas.v1.Occurrence;
+
+ /**
+ * Encodes the specified Occurrence message. Does not implicitly {@link grafeas.v1.Occurrence.verify|verify} messages.
+ * @param message Occurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Occurrence message, length delimited. Does not implicitly {@link grafeas.v1.Occurrence.verify|verify} messages.
+ * @param message Occurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Occurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Occurrence
+ * @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): grafeas.v1.Occurrence;
+
+ /**
+ * Decodes an Occurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Occurrence
+ * @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)): grafeas.v1.Occurrence;
+
+ /**
+ * Verifies an Occurrence 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 Occurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Occurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Occurrence;
+
+ /**
+ * Creates a plain object from an Occurrence message. Also converts values to other types if specified.
+ * @param message Occurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Occurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Occurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Occurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Note. */
+ interface INote {
+
+ /** Note name */
+ name?: (string|null);
+
+ /** Note shortDescription */
+ shortDescription?: (string|null);
+
+ /** Note longDescription */
+ longDescription?: (string|null);
+
+ /** Note kind */
+ kind?: (grafeas.v1.NoteKind|keyof typeof grafeas.v1.NoteKind|null);
+
+ /** Note relatedUrl */
+ relatedUrl?: (grafeas.v1.IRelatedUrl[]|null);
+
+ /** Note expirationTime */
+ expirationTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note relatedNoteNames */
+ relatedNoteNames?: (string[]|null);
+
+ /** Note vulnerability */
+ vulnerability?: (grafeas.v1.IVulnerabilityNote|null);
+
+ /** Note build */
+ build?: (grafeas.v1.IBuildNote|null);
+
+ /** Note image */
+ image?: (grafeas.v1.IImageNote|null);
+
+ /** Note package */
+ "package"?: (grafeas.v1.IPackageNote|null);
+
+ /** Note deployment */
+ deployment?: (grafeas.v1.IDeploymentNote|null);
+
+ /** Note discovery */
+ discovery?: (grafeas.v1.IDiscoveryNote|null);
+
+ /** Note attestation */
+ attestation?: (grafeas.v1.IAttestationNote|null);
+
+ /** Note upgrade */
+ upgrade?: (grafeas.v1.IUpgradeNote|null);
+
+ /** Note compliance */
+ compliance?: (grafeas.v1.IComplianceNote|null);
+
+ /** Note dsseAttestation */
+ dsseAttestation?: (grafeas.v1.IDSSEAttestationNote|null);
+ }
+
+ /** Represents a Note. */
+ class Note implements INote {
+
+ /**
+ * Constructs a new Note.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.INote);
+
+ /** Note name. */
+ public name: string;
+
+ /** Note shortDescription. */
+ public shortDescription: string;
+
+ /** Note longDescription. */
+ public longDescription: string;
+
+ /** Note kind. */
+ public kind: (grafeas.v1.NoteKind|keyof typeof grafeas.v1.NoteKind);
+
+ /** Note relatedUrl. */
+ public relatedUrl: grafeas.v1.IRelatedUrl[];
+
+ /** Note expirationTime. */
+ public expirationTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note relatedNoteNames. */
+ public relatedNoteNames: string[];
+
+ /** Note vulnerability. */
+ public vulnerability?: (grafeas.v1.IVulnerabilityNote|null);
+
+ /** Note build. */
+ public build?: (grafeas.v1.IBuildNote|null);
+
+ /** Note image. */
+ public image?: (grafeas.v1.IImageNote|null);
+
+ /** Note package. */
+ public package?: (grafeas.v1.IPackageNote|null);
+
+ /** Note deployment. */
+ public deployment?: (grafeas.v1.IDeploymentNote|null);
+
+ /** Note discovery. */
+ public discovery?: (grafeas.v1.IDiscoveryNote|null);
+
+ /** Note attestation. */
+ public attestation?: (grafeas.v1.IAttestationNote|null);
+
+ /** Note upgrade. */
+ public upgrade?: (grafeas.v1.IUpgradeNote|null);
+
+ /** Note compliance. */
+ public compliance?: (grafeas.v1.IComplianceNote|null);
+
+ /** Note dsseAttestation. */
+ public dsseAttestation?: (grafeas.v1.IDSSEAttestationNote|null);
+
+ /** Note type. */
+ public type?: ("vulnerability"|"build"|"image"|"package"|"deployment"|"discovery"|"attestation"|"upgrade"|"compliance"|"dsseAttestation");
+
+ /**
+ * Creates a new Note instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Note instance
+ */
+ public static create(properties?: grafeas.v1.INote): grafeas.v1.Note;
+
+ /**
+ * Encodes the specified Note message. Does not implicitly {@link grafeas.v1.Note.verify|verify} messages.
+ * @param message Note message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.INote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Note message, length delimited. Does not implicitly {@link grafeas.v1.Note.verify|verify} messages.
+ * @param message Note message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.INote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Note message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Note
+ * @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): grafeas.v1.Note;
+
+ /**
+ * Decodes a Note message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Note
+ * @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)): grafeas.v1.Note;
+
+ /**
+ * Verifies a Note 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 Note message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Note
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Note;
+
+ /**
+ * Creates a plain object from a Note message. Also converts values to other types if specified.
+ * @param message Note
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Note, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Note to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Note
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOccurrenceRequest. */
+ interface IGetOccurrenceRequest {
+
+ /** GetOccurrenceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOccurrenceRequest. */
+ class GetOccurrenceRequest implements IGetOccurrenceRequest {
+
+ /**
+ * Constructs a new GetOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IGetOccurrenceRequest);
+
+ /** GetOccurrenceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1.IGetOccurrenceRequest): grafeas.v1.GetOccurrenceRequest;
+
+ /**
+ * Encodes the specified GetOccurrenceRequest message. Does not implicitly {@link grafeas.v1.GetOccurrenceRequest.verify|verify} messages.
+ * @param message GetOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IGetOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1.GetOccurrenceRequest.verify|verify} messages.
+ * @param message GetOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IGetOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOccurrenceRequest
+ * @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): grafeas.v1.GetOccurrenceRequest;
+
+ /**
+ * Decodes a GetOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOccurrenceRequest
+ * @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)): grafeas.v1.GetOccurrenceRequest;
+
+ /**
+ * Verifies a GetOccurrenceRequest 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 GetOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.GetOccurrenceRequest;
+
+ /**
+ * Creates a plain object from a GetOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message GetOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.GetOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOccurrencesRequest. */
+ interface IListOccurrencesRequest {
+
+ /** ListOccurrencesRequest parent */
+ parent?: (string|null);
+
+ /** ListOccurrencesRequest filter */
+ filter?: (string|null);
+
+ /** ListOccurrencesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListOccurrencesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListOccurrencesRequest. */
+ class ListOccurrencesRequest implements IListOccurrencesRequest {
+
+ /**
+ * Constructs a new ListOccurrencesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IListOccurrencesRequest);
+
+ /** ListOccurrencesRequest parent. */
+ public parent: string;
+
+ /** ListOccurrencesRequest filter. */
+ public filter: string;
+
+ /** ListOccurrencesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListOccurrencesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListOccurrencesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOccurrencesRequest instance
+ */
+ public static create(properties?: grafeas.v1.IListOccurrencesRequest): grafeas.v1.ListOccurrencesRequest;
+
+ /**
+ * Encodes the specified ListOccurrencesRequest message. Does not implicitly {@link grafeas.v1.ListOccurrencesRequest.verify|verify} messages.
+ * @param message ListOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IListOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOccurrencesRequest message, length delimited. Does not implicitly {@link grafeas.v1.ListOccurrencesRequest.verify|verify} messages.
+ * @param message ListOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IListOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOccurrencesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOccurrencesRequest
+ * @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): grafeas.v1.ListOccurrencesRequest;
+
+ /**
+ * Decodes a ListOccurrencesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOccurrencesRequest
+ * @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)): grafeas.v1.ListOccurrencesRequest;
+
+ /**
+ * Verifies a ListOccurrencesRequest 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 ListOccurrencesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOccurrencesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ListOccurrencesRequest;
+
+ /**
+ * Creates a plain object from a ListOccurrencesRequest message. Also converts values to other types if specified.
+ * @param message ListOccurrencesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ListOccurrencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOccurrencesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOccurrencesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOccurrencesResponse. */
+ interface IListOccurrencesResponse {
+
+ /** ListOccurrencesResponse occurrences */
+ occurrences?: (grafeas.v1.IOccurrence[]|null);
+
+ /** ListOccurrencesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListOccurrencesResponse. */
+ class ListOccurrencesResponse implements IListOccurrencesResponse {
+
+ /**
+ * Constructs a new ListOccurrencesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IListOccurrencesResponse);
+
+ /** ListOccurrencesResponse occurrences. */
+ public occurrences: grafeas.v1.IOccurrence[];
+
+ /** ListOccurrencesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListOccurrencesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOccurrencesResponse instance
+ */
+ public static create(properties?: grafeas.v1.IListOccurrencesResponse): grafeas.v1.ListOccurrencesResponse;
+
+ /**
+ * Encodes the specified ListOccurrencesResponse message. Does not implicitly {@link grafeas.v1.ListOccurrencesResponse.verify|verify} messages.
+ * @param message ListOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IListOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOccurrencesResponse message, length delimited. Does not implicitly {@link grafeas.v1.ListOccurrencesResponse.verify|verify} messages.
+ * @param message ListOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IListOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOccurrencesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOccurrencesResponse
+ * @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): grafeas.v1.ListOccurrencesResponse;
+
+ /**
+ * Decodes a ListOccurrencesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOccurrencesResponse
+ * @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)): grafeas.v1.ListOccurrencesResponse;
+
+ /**
+ * Verifies a ListOccurrencesResponse 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 ListOccurrencesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOccurrencesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ListOccurrencesResponse;
+
+ /**
+ * Creates a plain object from a ListOccurrencesResponse message. Also converts values to other types if specified.
+ * @param message ListOccurrencesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ListOccurrencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOccurrencesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOccurrencesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteOccurrenceRequest. */
+ interface IDeleteOccurrenceRequest {
+
+ /** DeleteOccurrenceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteOccurrenceRequest. */
+ class DeleteOccurrenceRequest implements IDeleteOccurrenceRequest {
+
+ /**
+ * Constructs a new DeleteOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDeleteOccurrenceRequest);
+
+ /** DeleteOccurrenceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1.IDeleteOccurrenceRequest): grafeas.v1.DeleteOccurrenceRequest;
+
+ /**
+ * Encodes the specified DeleteOccurrenceRequest message. Does not implicitly {@link grafeas.v1.DeleteOccurrenceRequest.verify|verify} messages.
+ * @param message DeleteOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDeleteOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1.DeleteOccurrenceRequest.verify|verify} messages.
+ * @param message DeleteOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDeleteOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteOccurrenceRequest
+ * @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): grafeas.v1.DeleteOccurrenceRequest;
+
+ /**
+ * Decodes a DeleteOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteOccurrenceRequest
+ * @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)): grafeas.v1.DeleteOccurrenceRequest;
+
+ /**
+ * Verifies a DeleteOccurrenceRequest 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 DeleteOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DeleteOccurrenceRequest;
+
+ /**
+ * Creates a plain object from a DeleteOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message DeleteOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DeleteOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateOccurrenceRequest. */
+ interface ICreateOccurrenceRequest {
+
+ /** CreateOccurrenceRequest parent */
+ parent?: (string|null);
+
+ /** CreateOccurrenceRequest occurrence */
+ occurrence?: (grafeas.v1.IOccurrence|null);
+ }
+
+ /** Represents a CreateOccurrenceRequest. */
+ class CreateOccurrenceRequest implements ICreateOccurrenceRequest {
+
+ /**
+ * Constructs a new CreateOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICreateOccurrenceRequest);
+
+ /** CreateOccurrenceRequest parent. */
+ public parent: string;
+
+ /** CreateOccurrenceRequest occurrence. */
+ public occurrence?: (grafeas.v1.IOccurrence|null);
+
+ /**
+ * Creates a new CreateOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1.ICreateOccurrenceRequest): grafeas.v1.CreateOccurrenceRequest;
+
+ /**
+ * Encodes the specified CreateOccurrenceRequest message. Does not implicitly {@link grafeas.v1.CreateOccurrenceRequest.verify|verify} messages.
+ * @param message CreateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ICreateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1.CreateOccurrenceRequest.verify|verify} messages.
+ * @param message CreateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ICreateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateOccurrenceRequest
+ * @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): grafeas.v1.CreateOccurrenceRequest;
+
+ /**
+ * Decodes a CreateOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateOccurrenceRequest
+ * @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)): grafeas.v1.CreateOccurrenceRequest;
+
+ /**
+ * Verifies a CreateOccurrenceRequest 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 CreateOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.CreateOccurrenceRequest;
+
+ /**
+ * Creates a plain object from a CreateOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message CreateOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.CreateOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateOccurrenceRequest. */
+ interface IUpdateOccurrenceRequest {
+
+ /** UpdateOccurrenceRequest name */
+ name?: (string|null);
+
+ /** UpdateOccurrenceRequest occurrence */
+ occurrence?: (grafeas.v1.IOccurrence|null);
+
+ /** UpdateOccurrenceRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateOccurrenceRequest. */
+ class UpdateOccurrenceRequest implements IUpdateOccurrenceRequest {
+
+ /**
+ * Constructs a new UpdateOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IUpdateOccurrenceRequest);
+
+ /** UpdateOccurrenceRequest name. */
+ public name: string;
+
+ /** UpdateOccurrenceRequest occurrence. */
+ public occurrence?: (grafeas.v1.IOccurrence|null);
+
+ /** UpdateOccurrenceRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1.IUpdateOccurrenceRequest): grafeas.v1.UpdateOccurrenceRequest;
+
+ /**
+ * Encodes the specified UpdateOccurrenceRequest message. Does not implicitly {@link grafeas.v1.UpdateOccurrenceRequest.verify|verify} messages.
+ * @param message UpdateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IUpdateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1.UpdateOccurrenceRequest.verify|verify} messages.
+ * @param message UpdateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IUpdateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateOccurrenceRequest
+ * @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): grafeas.v1.UpdateOccurrenceRequest;
+
+ /**
+ * Decodes an UpdateOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateOccurrenceRequest
+ * @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)): grafeas.v1.UpdateOccurrenceRequest;
+
+ /**
+ * Verifies an UpdateOccurrenceRequest 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 UpdateOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.UpdateOccurrenceRequest;
+
+ /**
+ * Creates a plain object from an UpdateOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message UpdateOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.UpdateOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetNoteRequest. */
+ interface IGetNoteRequest {
+
+ /** GetNoteRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetNoteRequest. */
+ class GetNoteRequest implements IGetNoteRequest {
+
+ /**
+ * Constructs a new GetNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IGetNoteRequest);
+
+ /** GetNoteRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1.IGetNoteRequest): grafeas.v1.GetNoteRequest;
+
+ /**
+ * Encodes the specified GetNoteRequest message. Does not implicitly {@link grafeas.v1.GetNoteRequest.verify|verify} messages.
+ * @param message GetNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IGetNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1.GetNoteRequest.verify|verify} messages.
+ * @param message GetNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IGetNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetNoteRequest
+ * @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): grafeas.v1.GetNoteRequest;
+
+ /**
+ * Decodes a GetNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetNoteRequest
+ * @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)): grafeas.v1.GetNoteRequest;
+
+ /**
+ * Verifies a GetNoteRequest 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 GetNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.GetNoteRequest;
+
+ /**
+ * Creates a plain object from a GetNoteRequest message. Also converts values to other types if specified.
+ * @param message GetNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.GetNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOccurrenceNoteRequest. */
+ interface IGetOccurrenceNoteRequest {
+
+ /** GetOccurrenceNoteRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOccurrenceNoteRequest. */
+ class GetOccurrenceNoteRequest implements IGetOccurrenceNoteRequest {
+
+ /**
+ * Constructs a new GetOccurrenceNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IGetOccurrenceNoteRequest);
+
+ /** GetOccurrenceNoteRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOccurrenceNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOccurrenceNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1.IGetOccurrenceNoteRequest): grafeas.v1.GetOccurrenceNoteRequest;
+
+ /**
+ * Encodes the specified GetOccurrenceNoteRequest message. Does not implicitly {@link grafeas.v1.GetOccurrenceNoteRequest.verify|verify} messages.
+ * @param message GetOccurrenceNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IGetOccurrenceNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOccurrenceNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1.GetOccurrenceNoteRequest.verify|verify} messages.
+ * @param message GetOccurrenceNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IGetOccurrenceNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOccurrenceNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOccurrenceNoteRequest
+ * @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): grafeas.v1.GetOccurrenceNoteRequest;
+
+ /**
+ * Decodes a GetOccurrenceNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOccurrenceNoteRequest
+ * @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)): grafeas.v1.GetOccurrenceNoteRequest;
+
+ /**
+ * Verifies a GetOccurrenceNoteRequest 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 GetOccurrenceNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOccurrenceNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.GetOccurrenceNoteRequest;
+
+ /**
+ * Creates a plain object from a GetOccurrenceNoteRequest message. Also converts values to other types if specified.
+ * @param message GetOccurrenceNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.GetOccurrenceNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOccurrenceNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOccurrenceNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotesRequest. */
+ interface IListNotesRequest {
+
+ /** ListNotesRequest parent */
+ parent?: (string|null);
+
+ /** ListNotesRequest filter */
+ filter?: (string|null);
+
+ /** ListNotesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListNotesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListNotesRequest. */
+ class ListNotesRequest implements IListNotesRequest {
+
+ /**
+ * Constructs a new ListNotesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IListNotesRequest);
+
+ /** ListNotesRequest parent. */
+ public parent: string;
+
+ /** ListNotesRequest filter. */
+ public filter: string;
+
+ /** ListNotesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListNotesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListNotesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotesRequest instance
+ */
+ public static create(properties?: grafeas.v1.IListNotesRequest): grafeas.v1.ListNotesRequest;
+
+ /**
+ * Encodes the specified ListNotesRequest message. Does not implicitly {@link grafeas.v1.ListNotesRequest.verify|verify} messages.
+ * @param message ListNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IListNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotesRequest message, length delimited. Does not implicitly {@link grafeas.v1.ListNotesRequest.verify|verify} messages.
+ * @param message ListNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IListNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotesRequest
+ * @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): grafeas.v1.ListNotesRequest;
+
+ /**
+ * Decodes a ListNotesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotesRequest
+ * @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)): grafeas.v1.ListNotesRequest;
+
+ /**
+ * Verifies a ListNotesRequest 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 ListNotesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ListNotesRequest;
+
+ /**
+ * Creates a plain object from a ListNotesRequest message. Also converts values to other types if specified.
+ * @param message ListNotesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ListNotesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotesResponse. */
+ interface IListNotesResponse {
+
+ /** ListNotesResponse notes */
+ notes?: (grafeas.v1.INote[]|null);
+
+ /** ListNotesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListNotesResponse. */
+ class ListNotesResponse implements IListNotesResponse {
+
+ /**
+ * Constructs a new ListNotesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IListNotesResponse);
+
+ /** ListNotesResponse notes. */
+ public notes: grafeas.v1.INote[];
+
+ /** ListNotesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListNotesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotesResponse instance
+ */
+ public static create(properties?: grafeas.v1.IListNotesResponse): grafeas.v1.ListNotesResponse;
+
+ /**
+ * Encodes the specified ListNotesResponse message. Does not implicitly {@link grafeas.v1.ListNotesResponse.verify|verify} messages.
+ * @param message ListNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IListNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotesResponse message, length delimited. Does not implicitly {@link grafeas.v1.ListNotesResponse.verify|verify} messages.
+ * @param message ListNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IListNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotesResponse
+ * @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): grafeas.v1.ListNotesResponse;
+
+ /**
+ * Decodes a ListNotesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotesResponse
+ * @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)): grafeas.v1.ListNotesResponse;
+
+ /**
+ * Verifies a ListNotesResponse 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 ListNotesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ListNotesResponse;
+
+ /**
+ * Creates a plain object from a ListNotesResponse message. Also converts values to other types if specified.
+ * @param message ListNotesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ListNotesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteNoteRequest. */
+ interface IDeleteNoteRequest {
+
+ /** DeleteNoteRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteNoteRequest. */
+ class DeleteNoteRequest implements IDeleteNoteRequest {
+
+ /**
+ * Constructs a new DeleteNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDeleteNoteRequest);
+
+ /** DeleteNoteRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1.IDeleteNoteRequest): grafeas.v1.DeleteNoteRequest;
+
+ /**
+ * Encodes the specified DeleteNoteRequest message. Does not implicitly {@link grafeas.v1.DeleteNoteRequest.verify|verify} messages.
+ * @param message DeleteNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDeleteNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1.DeleteNoteRequest.verify|verify} messages.
+ * @param message DeleteNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDeleteNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteNoteRequest
+ * @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): grafeas.v1.DeleteNoteRequest;
+
+ /**
+ * Decodes a DeleteNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteNoteRequest
+ * @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)): grafeas.v1.DeleteNoteRequest;
+
+ /**
+ * Verifies a DeleteNoteRequest 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 DeleteNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DeleteNoteRequest;
+
+ /**
+ * Creates a plain object from a DeleteNoteRequest message. Also converts values to other types if specified.
+ * @param message DeleteNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.DeleteNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateNoteRequest. */
+ interface ICreateNoteRequest {
+
+ /** CreateNoteRequest parent */
+ parent?: (string|null);
+
+ /** CreateNoteRequest noteId */
+ noteId?: (string|null);
+
+ /** CreateNoteRequest note */
+ note?: (grafeas.v1.INote|null);
+ }
+
+ /** Represents a CreateNoteRequest. */
+ class CreateNoteRequest implements ICreateNoteRequest {
+
+ /**
+ * Constructs a new CreateNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ICreateNoteRequest);
+
+ /** CreateNoteRequest parent. */
+ public parent: string;
+
+ /** CreateNoteRequest noteId. */
+ public noteId: string;
+
+ /** CreateNoteRequest note. */
+ public note?: (grafeas.v1.INote|null);
+
+ /**
+ * Creates a new CreateNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1.ICreateNoteRequest): grafeas.v1.CreateNoteRequest;
+
+ /**
+ * Encodes the specified CreateNoteRequest message. Does not implicitly {@link grafeas.v1.CreateNoteRequest.verify|verify} messages.
+ * @param message CreateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ICreateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1.CreateNoteRequest.verify|verify} messages.
+ * @param message CreateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ICreateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateNoteRequest
+ * @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): grafeas.v1.CreateNoteRequest;
+
+ /**
+ * Decodes a CreateNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateNoteRequest
+ * @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)): grafeas.v1.CreateNoteRequest;
+
+ /**
+ * Verifies a CreateNoteRequest 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 CreateNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.CreateNoteRequest;
+
+ /**
+ * Creates a plain object from a CreateNoteRequest message. Also converts values to other types if specified.
+ * @param message CreateNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.CreateNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateNoteRequest. */
+ interface IUpdateNoteRequest {
+
+ /** UpdateNoteRequest name */
+ name?: (string|null);
+
+ /** UpdateNoteRequest note */
+ note?: (grafeas.v1.INote|null);
+
+ /** UpdateNoteRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateNoteRequest. */
+ class UpdateNoteRequest implements IUpdateNoteRequest {
+
+ /**
+ * Constructs a new UpdateNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IUpdateNoteRequest);
+
+ /** UpdateNoteRequest name. */
+ public name: string;
+
+ /** UpdateNoteRequest note. */
+ public note?: (grafeas.v1.INote|null);
+
+ /** UpdateNoteRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1.IUpdateNoteRequest): grafeas.v1.UpdateNoteRequest;
+
+ /**
+ * Encodes the specified UpdateNoteRequest message. Does not implicitly {@link grafeas.v1.UpdateNoteRequest.verify|verify} messages.
+ * @param message UpdateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IUpdateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1.UpdateNoteRequest.verify|verify} messages.
+ * @param message UpdateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IUpdateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateNoteRequest
+ * @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): grafeas.v1.UpdateNoteRequest;
+
+ /**
+ * Decodes an UpdateNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateNoteRequest
+ * @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)): grafeas.v1.UpdateNoteRequest;
+
+ /**
+ * Verifies an UpdateNoteRequest 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 UpdateNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.UpdateNoteRequest;
+
+ /**
+ * Creates a plain object from an UpdateNoteRequest message. Also converts values to other types if specified.
+ * @param message UpdateNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.UpdateNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNoteOccurrencesRequest. */
+ interface IListNoteOccurrencesRequest {
+
+ /** ListNoteOccurrencesRequest name */
+ name?: (string|null);
+
+ /** ListNoteOccurrencesRequest filter */
+ filter?: (string|null);
+
+ /** ListNoteOccurrencesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListNoteOccurrencesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListNoteOccurrencesRequest. */
+ class ListNoteOccurrencesRequest implements IListNoteOccurrencesRequest {
+
+ /**
+ * Constructs a new ListNoteOccurrencesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IListNoteOccurrencesRequest);
+
+ /** ListNoteOccurrencesRequest name. */
+ public name: string;
+
+ /** ListNoteOccurrencesRequest filter. */
+ public filter: string;
+
+ /** ListNoteOccurrencesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListNoteOccurrencesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListNoteOccurrencesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNoteOccurrencesRequest instance
+ */
+ public static create(properties?: grafeas.v1.IListNoteOccurrencesRequest): grafeas.v1.ListNoteOccurrencesRequest;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesRequest message. Does not implicitly {@link grafeas.v1.ListNoteOccurrencesRequest.verify|verify} messages.
+ * @param message ListNoteOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IListNoteOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesRequest message, length delimited. Does not implicitly {@link grafeas.v1.ListNoteOccurrencesRequest.verify|verify} messages.
+ * @param message ListNoteOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IListNoteOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNoteOccurrencesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNoteOccurrencesRequest
+ * @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): grafeas.v1.ListNoteOccurrencesRequest;
+
+ /**
+ * Decodes a ListNoteOccurrencesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNoteOccurrencesRequest
+ * @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)): grafeas.v1.ListNoteOccurrencesRequest;
+
+ /**
+ * Verifies a ListNoteOccurrencesRequest 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 ListNoteOccurrencesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNoteOccurrencesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ListNoteOccurrencesRequest;
+
+ /**
+ * Creates a plain object from a ListNoteOccurrencesRequest message. Also converts values to other types if specified.
+ * @param message ListNoteOccurrencesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ListNoteOccurrencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNoteOccurrencesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNoteOccurrencesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNoteOccurrencesResponse. */
+ interface IListNoteOccurrencesResponse {
+
+ /** ListNoteOccurrencesResponse occurrences */
+ occurrences?: (grafeas.v1.IOccurrence[]|null);
+
+ /** ListNoteOccurrencesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListNoteOccurrencesResponse. */
+ class ListNoteOccurrencesResponse implements IListNoteOccurrencesResponse {
+
+ /**
+ * Constructs a new ListNoteOccurrencesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IListNoteOccurrencesResponse);
+
+ /** ListNoteOccurrencesResponse occurrences. */
+ public occurrences: grafeas.v1.IOccurrence[];
+
+ /** ListNoteOccurrencesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListNoteOccurrencesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNoteOccurrencesResponse instance
+ */
+ public static create(properties?: grafeas.v1.IListNoteOccurrencesResponse): grafeas.v1.ListNoteOccurrencesResponse;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesResponse message. Does not implicitly {@link grafeas.v1.ListNoteOccurrencesResponse.verify|verify} messages.
+ * @param message ListNoteOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IListNoteOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesResponse message, length delimited. Does not implicitly {@link grafeas.v1.ListNoteOccurrencesResponse.verify|verify} messages.
+ * @param message ListNoteOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IListNoteOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNoteOccurrencesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNoteOccurrencesResponse
+ * @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): grafeas.v1.ListNoteOccurrencesResponse;
+
+ /**
+ * Decodes a ListNoteOccurrencesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNoteOccurrencesResponse
+ * @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)): grafeas.v1.ListNoteOccurrencesResponse;
+
+ /**
+ * Verifies a ListNoteOccurrencesResponse 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 ListNoteOccurrencesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNoteOccurrencesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ListNoteOccurrencesResponse;
+
+ /**
+ * Creates a plain object from a ListNoteOccurrencesResponse message. Also converts values to other types if specified.
+ * @param message ListNoteOccurrencesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ListNoteOccurrencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNoteOccurrencesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNoteOccurrencesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateNotesRequest. */
+ interface IBatchCreateNotesRequest {
+
+ /** BatchCreateNotesRequest parent */
+ parent?: (string|null);
+
+ /** BatchCreateNotesRequest notes */
+ notes?: ({ [k: string]: grafeas.v1.INote }|null);
+ }
+
+ /** Represents a BatchCreateNotesRequest. */
+ class BatchCreateNotesRequest implements IBatchCreateNotesRequest {
+
+ /**
+ * Constructs a new BatchCreateNotesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBatchCreateNotesRequest);
+
+ /** BatchCreateNotesRequest parent. */
+ public parent: string;
+
+ /** BatchCreateNotesRequest notes. */
+ public notes: { [k: string]: grafeas.v1.INote };
+
+ /**
+ * Creates a new BatchCreateNotesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateNotesRequest instance
+ */
+ public static create(properties?: grafeas.v1.IBatchCreateNotesRequest): grafeas.v1.BatchCreateNotesRequest;
+
+ /**
+ * Encodes the specified BatchCreateNotesRequest message. Does not implicitly {@link grafeas.v1.BatchCreateNotesRequest.verify|verify} messages.
+ * @param message BatchCreateNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBatchCreateNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateNotesRequest message, length delimited. Does not implicitly {@link grafeas.v1.BatchCreateNotesRequest.verify|verify} messages.
+ * @param message BatchCreateNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBatchCreateNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateNotesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateNotesRequest
+ * @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): grafeas.v1.BatchCreateNotesRequest;
+
+ /**
+ * Decodes a BatchCreateNotesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateNotesRequest
+ * @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)): grafeas.v1.BatchCreateNotesRequest;
+
+ /**
+ * Verifies a BatchCreateNotesRequest 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 BatchCreateNotesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateNotesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BatchCreateNotesRequest;
+
+ /**
+ * Creates a plain object from a BatchCreateNotesRequest message. Also converts values to other types if specified.
+ * @param message BatchCreateNotesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BatchCreateNotesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateNotesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateNotesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateNotesResponse. */
+ interface IBatchCreateNotesResponse {
+
+ /** BatchCreateNotesResponse notes */
+ notes?: (grafeas.v1.INote[]|null);
+ }
+
+ /** Represents a BatchCreateNotesResponse. */
+ class BatchCreateNotesResponse implements IBatchCreateNotesResponse {
+
+ /**
+ * Constructs a new BatchCreateNotesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBatchCreateNotesResponse);
+
+ /** BatchCreateNotesResponse notes. */
+ public notes: grafeas.v1.INote[];
+
+ /**
+ * Creates a new BatchCreateNotesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateNotesResponse instance
+ */
+ public static create(properties?: grafeas.v1.IBatchCreateNotesResponse): grafeas.v1.BatchCreateNotesResponse;
+
+ /**
+ * Encodes the specified BatchCreateNotesResponse message. Does not implicitly {@link grafeas.v1.BatchCreateNotesResponse.verify|verify} messages.
+ * @param message BatchCreateNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBatchCreateNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateNotesResponse message, length delimited. Does not implicitly {@link grafeas.v1.BatchCreateNotesResponse.verify|verify} messages.
+ * @param message BatchCreateNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBatchCreateNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateNotesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateNotesResponse
+ * @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): grafeas.v1.BatchCreateNotesResponse;
+
+ /**
+ * Decodes a BatchCreateNotesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateNotesResponse
+ * @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)): grafeas.v1.BatchCreateNotesResponse;
+
+ /**
+ * Verifies a BatchCreateNotesResponse 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 BatchCreateNotesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateNotesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BatchCreateNotesResponse;
+
+ /**
+ * Creates a plain object from a BatchCreateNotesResponse message. Also converts values to other types if specified.
+ * @param message BatchCreateNotesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BatchCreateNotesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateNotesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateNotesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateOccurrencesRequest. */
+ interface IBatchCreateOccurrencesRequest {
+
+ /** BatchCreateOccurrencesRequest parent */
+ parent?: (string|null);
+
+ /** BatchCreateOccurrencesRequest occurrences */
+ occurrences?: (grafeas.v1.IOccurrence[]|null);
+ }
+
+ /** Represents a BatchCreateOccurrencesRequest. */
+ class BatchCreateOccurrencesRequest implements IBatchCreateOccurrencesRequest {
+
+ /**
+ * Constructs a new BatchCreateOccurrencesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBatchCreateOccurrencesRequest);
+
+ /** BatchCreateOccurrencesRequest parent. */
+ public parent: string;
+
+ /** BatchCreateOccurrencesRequest occurrences. */
+ public occurrences: grafeas.v1.IOccurrence[];
+
+ /**
+ * Creates a new BatchCreateOccurrencesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateOccurrencesRequest instance
+ */
+ public static create(properties?: grafeas.v1.IBatchCreateOccurrencesRequest): grafeas.v1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesRequest message. Does not implicitly {@link grafeas.v1.BatchCreateOccurrencesRequest.verify|verify} messages.
+ * @param message BatchCreateOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBatchCreateOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesRequest message, length delimited. Does not implicitly {@link grafeas.v1.BatchCreateOccurrencesRequest.verify|verify} messages.
+ * @param message BatchCreateOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBatchCreateOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateOccurrencesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateOccurrencesRequest
+ * @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): grafeas.v1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Decodes a BatchCreateOccurrencesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateOccurrencesRequest
+ * @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)): grafeas.v1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Verifies a BatchCreateOccurrencesRequest 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 BatchCreateOccurrencesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateOccurrencesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Creates a plain object from a BatchCreateOccurrencesRequest message. Also converts values to other types if specified.
+ * @param message BatchCreateOccurrencesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BatchCreateOccurrencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateOccurrencesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateOccurrencesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateOccurrencesResponse. */
+ interface IBatchCreateOccurrencesResponse {
+
+ /** BatchCreateOccurrencesResponse occurrences */
+ occurrences?: (grafeas.v1.IOccurrence[]|null);
+ }
+
+ /** Represents a BatchCreateOccurrencesResponse. */
+ class BatchCreateOccurrencesResponse implements IBatchCreateOccurrencesResponse {
+
+ /**
+ * Constructs a new BatchCreateOccurrencesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IBatchCreateOccurrencesResponse);
+
+ /** BatchCreateOccurrencesResponse occurrences. */
+ public occurrences: grafeas.v1.IOccurrence[];
+
+ /**
+ * Creates a new BatchCreateOccurrencesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateOccurrencesResponse instance
+ */
+ public static create(properties?: grafeas.v1.IBatchCreateOccurrencesResponse): grafeas.v1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesResponse message. Does not implicitly {@link grafeas.v1.BatchCreateOccurrencesResponse.verify|verify} messages.
+ * @param message BatchCreateOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IBatchCreateOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesResponse message, length delimited. Does not implicitly {@link grafeas.v1.BatchCreateOccurrencesResponse.verify|verify} messages.
+ * @param message BatchCreateOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IBatchCreateOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateOccurrencesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateOccurrencesResponse
+ * @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): grafeas.v1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Decodes a BatchCreateOccurrencesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateOccurrencesResponse
+ * @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)): grafeas.v1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Verifies a BatchCreateOccurrencesResponse 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 BatchCreateOccurrencesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateOccurrencesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Creates a plain object from a BatchCreateOccurrencesResponse message. Also converts values to other types if specified.
+ * @param message BatchCreateOccurrencesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.BatchCreateOccurrencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateOccurrencesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateOccurrencesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Layer. */
+ interface ILayer {
+
+ /** Layer directive */
+ directive?: (string|null);
+
+ /** Layer arguments */
+ "arguments"?: (string|null);
+ }
+
+ /** Represents a Layer. */
+ class Layer implements ILayer {
+
+ /**
+ * Constructs a new Layer.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ILayer);
+
+ /** Layer directive. */
+ public directive: string;
+
+ /** Layer arguments. */
+ public arguments: string;
+
+ /**
+ * Creates a new Layer instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Layer instance
+ */
+ public static create(properties?: grafeas.v1.ILayer): grafeas.v1.Layer;
+
+ /**
+ * Encodes the specified Layer message. Does not implicitly {@link grafeas.v1.Layer.verify|verify} messages.
+ * @param message Layer message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.ILayer, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Layer message, length delimited. Does not implicitly {@link grafeas.v1.Layer.verify|verify} messages.
+ * @param message Layer message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.ILayer, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Layer message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Layer
+ * @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): grafeas.v1.Layer;
+
+ /**
+ * Decodes a Layer message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Layer
+ * @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)): grafeas.v1.Layer;
+
+ /**
+ * Verifies a Layer 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 Layer message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Layer
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Layer;
+
+ /**
+ * Creates a plain object from a Layer message. Also converts values to other types if specified.
+ * @param message Layer
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Layer, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Layer to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Layer
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Fingerprint. */
+ interface IFingerprint {
+
+ /** Fingerprint v1Name */
+ v1Name?: (string|null);
+
+ /** Fingerprint v2Blob */
+ v2Blob?: (string[]|null);
+
+ /** Fingerprint v2Name */
+ v2Name?: (string|null);
+ }
+
+ /** Represents a Fingerprint. */
+ class Fingerprint implements IFingerprint {
+
+ /**
+ * Constructs a new Fingerprint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IFingerprint);
+
+ /** Fingerprint v1Name. */
+ public v1Name: string;
+
+ /** Fingerprint v2Blob. */
+ public v2Blob: string[];
+
+ /** Fingerprint v2Name. */
+ public v2Name: string;
+
+ /**
+ * Creates a new Fingerprint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Fingerprint instance
+ */
+ public static create(properties?: grafeas.v1.IFingerprint): grafeas.v1.Fingerprint;
+
+ /**
+ * Encodes the specified Fingerprint message. Does not implicitly {@link grafeas.v1.Fingerprint.verify|verify} messages.
+ * @param message Fingerprint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IFingerprint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Fingerprint message, length delimited. Does not implicitly {@link grafeas.v1.Fingerprint.verify|verify} messages.
+ * @param message Fingerprint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IFingerprint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Fingerprint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Fingerprint
+ * @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): grafeas.v1.Fingerprint;
+
+ /**
+ * Decodes a Fingerprint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Fingerprint
+ * @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)): grafeas.v1.Fingerprint;
+
+ /**
+ * Verifies a Fingerprint 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 Fingerprint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Fingerprint
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Fingerprint;
+
+ /**
+ * Creates a plain object from a Fingerprint message. Also converts values to other types if specified.
+ * @param message Fingerprint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Fingerprint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Fingerprint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Fingerprint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageNote. */
+ interface IImageNote {
+
+ /** ImageNote resourceUrl */
+ resourceUrl?: (string|null);
+
+ /** ImageNote fingerprint */
+ fingerprint?: (grafeas.v1.IFingerprint|null);
+ }
+
+ /** Represents an ImageNote. */
+ class ImageNote implements IImageNote {
+
+ /**
+ * Constructs a new ImageNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IImageNote);
+
+ /** ImageNote resourceUrl. */
+ public resourceUrl: string;
+
+ /** ImageNote fingerprint. */
+ public fingerprint?: (grafeas.v1.IFingerprint|null);
+
+ /**
+ * Creates a new ImageNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageNote instance
+ */
+ public static create(properties?: grafeas.v1.IImageNote): grafeas.v1.ImageNote;
+
+ /**
+ * Encodes the specified ImageNote message. Does not implicitly {@link grafeas.v1.ImageNote.verify|verify} messages.
+ * @param message ImageNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IImageNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageNote message, length delimited. Does not implicitly {@link grafeas.v1.ImageNote.verify|verify} messages.
+ * @param message ImageNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IImageNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageNote
+ * @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): grafeas.v1.ImageNote;
+
+ /**
+ * Decodes an ImageNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageNote
+ * @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)): grafeas.v1.ImageNote;
+
+ /**
+ * Verifies an ImageNote 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 ImageNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ImageNote;
+
+ /**
+ * Creates a plain object from an ImageNote message. Also converts values to other types if specified.
+ * @param message ImageNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ImageNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ImageOccurrence. */
+ interface IImageOccurrence {
+
+ /** ImageOccurrence fingerprint */
+ fingerprint?: (grafeas.v1.IFingerprint|null);
+
+ /** ImageOccurrence distance */
+ distance?: (number|null);
+
+ /** ImageOccurrence layerInfo */
+ layerInfo?: (grafeas.v1.ILayer[]|null);
+
+ /** ImageOccurrence baseResourceUrl */
+ baseResourceUrl?: (string|null);
+ }
+
+ /** Represents an ImageOccurrence. */
+ class ImageOccurrence implements IImageOccurrence {
+
+ /**
+ * Constructs a new ImageOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IImageOccurrence);
+
+ /** ImageOccurrence fingerprint. */
+ public fingerprint?: (grafeas.v1.IFingerprint|null);
+
+ /** ImageOccurrence distance. */
+ public distance: number;
+
+ /** ImageOccurrence layerInfo. */
+ public layerInfo: grafeas.v1.ILayer[];
+
+ /** ImageOccurrence baseResourceUrl. */
+ public baseResourceUrl: string;
+
+ /**
+ * Creates a new ImageOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ImageOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IImageOccurrence): grafeas.v1.ImageOccurrence;
+
+ /**
+ * Encodes the specified ImageOccurrence message. Does not implicitly {@link grafeas.v1.ImageOccurrence.verify|verify} messages.
+ * @param message ImageOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IImageOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ImageOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.ImageOccurrence.verify|verify} messages.
+ * @param message ImageOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IImageOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ImageOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ImageOccurrence
+ * @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): grafeas.v1.ImageOccurrence;
+
+ /**
+ * Decodes an ImageOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ImageOccurrence
+ * @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)): grafeas.v1.ImageOccurrence;
+
+ /**
+ * Verifies an ImageOccurrence 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 ImageOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ImageOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.ImageOccurrence;
+
+ /**
+ * Creates a plain object from an ImageOccurrence message. Also converts values to other types if specified.
+ * @param message ImageOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.ImageOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ImageOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ImageOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Architecture enum. */
+ enum Architecture {
+ ARCHITECTURE_UNSPECIFIED = 0,
+ X86 = 1,
+ X64 = 2
+ }
+
+ /** Properties of a Distribution. */
+ interface IDistribution {
+
+ /** Distribution cpeUri */
+ cpeUri?: (string|null);
+
+ /** Distribution architecture */
+ architecture?: (grafeas.v1.Architecture|keyof typeof grafeas.v1.Architecture|null);
+
+ /** Distribution latestVersion */
+ latestVersion?: (grafeas.v1.IVersion|null);
+
+ /** Distribution maintainer */
+ maintainer?: (string|null);
+
+ /** Distribution url */
+ url?: (string|null);
+
+ /** Distribution description */
+ description?: (string|null);
+ }
+
+ /** Represents a Distribution. */
+ class Distribution implements IDistribution {
+
+ /**
+ * Constructs a new Distribution.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IDistribution);
+
+ /** Distribution cpeUri. */
+ public cpeUri: string;
+
+ /** Distribution architecture. */
+ public architecture: (grafeas.v1.Architecture|keyof typeof grafeas.v1.Architecture);
+
+ /** Distribution latestVersion. */
+ public latestVersion?: (grafeas.v1.IVersion|null);
+
+ /** Distribution maintainer. */
+ public maintainer: string;
+
+ /** Distribution url. */
+ public url: string;
+
+ /** Distribution description. */
+ public description: string;
+
+ /**
+ * Creates a new Distribution instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Distribution instance
+ */
+ public static create(properties?: grafeas.v1.IDistribution): grafeas.v1.Distribution;
+
+ /**
+ * Encodes the specified Distribution message. Does not implicitly {@link grafeas.v1.Distribution.verify|verify} messages.
+ * @param message Distribution message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IDistribution, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Distribution message, length delimited. Does not implicitly {@link grafeas.v1.Distribution.verify|verify} messages.
+ * @param message Distribution message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IDistribution, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Distribution message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Distribution
+ * @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): grafeas.v1.Distribution;
+
+ /**
+ * Decodes a Distribution message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Distribution
+ * @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)): grafeas.v1.Distribution;
+
+ /**
+ * Verifies a Distribution 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 Distribution message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Distribution
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Distribution;
+
+ /**
+ * Creates a plain object from a Distribution message. Also converts values to other types if specified.
+ * @param message Distribution
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Distribution, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Distribution to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Distribution
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Location. */
+ interface ILocation {
+
+ /** Location cpeUri */
+ cpeUri?: (string|null);
+
+ /** Location version */
+ version?: (grafeas.v1.IVersion|null);
+
+ /** Location path */
+ path?: (string|null);
+ }
+
+ /** Represents a Location. */
+ class Location implements ILocation {
+
+ /**
+ * Constructs a new Location.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.ILocation);
+
+ /** Location cpeUri. */
+ public cpeUri: string;
+
+ /** Location version. */
+ public version?: (grafeas.v1.IVersion|null);
+
+ /** Location path. */
+ public path: string;
+
+ /**
+ * Creates a new Location instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Location instance
+ */
+ public static create(properties?: grafeas.v1.ILocation): grafeas.v1.Location;
+
+ /**
+ * Encodes the specified Location message. Does not implicitly {@link grafeas.v1.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: grafeas.v1.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Location message, length delimited. Does not implicitly {@link grafeas.v1.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: grafeas.v1.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): grafeas.v1.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)): grafeas.v1.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 }): grafeas.v1.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: grafeas.v1.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 PackageNote. */
+ interface IPackageNote {
+
+ /** PackageNote name */
+ name?: (string|null);
+
+ /** PackageNote distribution */
+ distribution?: (grafeas.v1.IDistribution[]|null);
+
+ /** PackageNote packageType */
+ packageType?: (string|null);
+
+ /** PackageNote cpeUri */
+ cpeUri?: (string|null);
+
+ /** PackageNote architecture */
+ architecture?: (grafeas.v1.Architecture|keyof typeof grafeas.v1.Architecture|null);
+
+ /** PackageNote version */
+ version?: (grafeas.v1.IVersion|null);
+
+ /** PackageNote maintainer */
+ maintainer?: (string|null);
+
+ /** PackageNote url */
+ url?: (string|null);
+
+ /** PackageNote description */
+ description?: (string|null);
+
+ /** PackageNote license */
+ license?: (grafeas.v1.ILicense|null);
+
+ /** PackageNote digest */
+ digest?: (grafeas.v1.IDigest[]|null);
+ }
+
+ /** Represents a PackageNote. */
+ class PackageNote implements IPackageNote {
+
+ /**
+ * Constructs a new PackageNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IPackageNote);
+
+ /** PackageNote name. */
+ public name: string;
+
+ /** PackageNote distribution. */
+ public distribution: grafeas.v1.IDistribution[];
+
+ /** PackageNote packageType. */
+ public packageType: string;
+
+ /** PackageNote cpeUri. */
+ public cpeUri: string;
+
+ /** PackageNote architecture. */
+ public architecture: (grafeas.v1.Architecture|keyof typeof grafeas.v1.Architecture);
+
+ /** PackageNote version. */
+ public version?: (grafeas.v1.IVersion|null);
+
+ /** PackageNote maintainer. */
+ public maintainer: string;
+
+ /** PackageNote url. */
+ public url: string;
+
+ /** PackageNote description. */
+ public description: string;
+
+ /** PackageNote license. */
+ public license?: (grafeas.v1.ILicense|null);
+
+ /** PackageNote digest. */
+ public digest: grafeas.v1.IDigest[];
+
+ /**
+ * Creates a new PackageNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PackageNote instance
+ */
+ public static create(properties?: grafeas.v1.IPackageNote): grafeas.v1.PackageNote;
+
+ /**
+ * Encodes the specified PackageNote message. Does not implicitly {@link grafeas.v1.PackageNote.verify|verify} messages.
+ * @param message PackageNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IPackageNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PackageNote message, length delimited. Does not implicitly {@link grafeas.v1.PackageNote.verify|verify} messages.
+ * @param message PackageNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IPackageNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PackageNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PackageNote
+ * @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): grafeas.v1.PackageNote;
+
+ /**
+ * Decodes a PackageNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PackageNote
+ * @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)): grafeas.v1.PackageNote;
+
+ /**
+ * Verifies a PackageNote 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 PackageNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PackageNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.PackageNote;
+
+ /**
+ * Creates a plain object from a PackageNote message. Also converts values to other types if specified.
+ * @param message PackageNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.PackageNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PackageNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PackageNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a PackageOccurrence. */
+ interface IPackageOccurrence {
+
+ /** PackageOccurrence name */
+ name?: (string|null);
+
+ /** PackageOccurrence location */
+ location?: (grafeas.v1.ILocation[]|null);
+
+ /** PackageOccurrence packageType */
+ packageType?: (string|null);
+
+ /** PackageOccurrence cpeUri */
+ cpeUri?: (string|null);
+
+ /** PackageOccurrence architecture */
+ architecture?: (grafeas.v1.Architecture|keyof typeof grafeas.v1.Architecture|null);
+
+ /** PackageOccurrence license */
+ license?: (grafeas.v1.ILicense|null);
+
+ /** PackageOccurrence version */
+ version?: (grafeas.v1.IVersion|null);
+ }
+
+ /** Represents a PackageOccurrence. */
+ class PackageOccurrence implements IPackageOccurrence {
+
+ /**
+ * Constructs a new PackageOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IPackageOccurrence);
+
+ /** PackageOccurrence name. */
+ public name: string;
+
+ /** PackageOccurrence location. */
+ public location: grafeas.v1.ILocation[];
+
+ /** PackageOccurrence packageType. */
+ public packageType: string;
+
+ /** PackageOccurrence cpeUri. */
+ public cpeUri: string;
+
+ /** PackageOccurrence architecture. */
+ public architecture: (grafeas.v1.Architecture|keyof typeof grafeas.v1.Architecture);
+
+ /** PackageOccurrence license. */
+ public license?: (grafeas.v1.ILicense|null);
+
+ /** PackageOccurrence version. */
+ public version?: (grafeas.v1.IVersion|null);
+
+ /**
+ * Creates a new PackageOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PackageOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IPackageOccurrence): grafeas.v1.PackageOccurrence;
+
+ /**
+ * Encodes the specified PackageOccurrence message. Does not implicitly {@link grafeas.v1.PackageOccurrence.verify|verify} messages.
+ * @param message PackageOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IPackageOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PackageOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.PackageOccurrence.verify|verify} messages.
+ * @param message PackageOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IPackageOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PackageOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PackageOccurrence
+ * @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): grafeas.v1.PackageOccurrence;
+
+ /**
+ * Decodes a PackageOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PackageOccurrence
+ * @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)): grafeas.v1.PackageOccurrence;
+
+ /**
+ * Verifies a PackageOccurrence 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 PackageOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PackageOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.PackageOccurrence;
+
+ /**
+ * Creates a plain object from a PackageOccurrence message. Also converts values to other types if specified.
+ * @param message PackageOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.PackageOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PackageOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PackageOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Version. */
+ interface IVersion {
+
+ /** Version epoch */
+ epoch?: (number|null);
+
+ /** Version name */
+ name?: (string|null);
+
+ /** Version revision */
+ revision?: (string|null);
+
+ /** Version inclusive */
+ inclusive?: (boolean|null);
+
+ /** Version kind */
+ kind?: (grafeas.v1.Version.VersionKind|keyof typeof grafeas.v1.Version.VersionKind|null);
+
+ /** Version fullName */
+ fullName?: (string|null);
+ }
+
+ /** Represents a Version. */
+ class Version implements IVersion {
+
+ /**
+ * Constructs a new Version.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IVersion);
+
+ /** Version epoch. */
+ public epoch: number;
+
+ /** Version name. */
+ public name: string;
+
+ /** Version revision. */
+ public revision: string;
+
+ /** Version inclusive. */
+ public inclusive: boolean;
+
+ /** Version kind. */
+ public kind: (grafeas.v1.Version.VersionKind|keyof typeof grafeas.v1.Version.VersionKind);
+
+ /** Version fullName. */
+ public fullName: string;
+
+ /**
+ * Creates a new Version instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Version instance
+ */
+ public static create(properties?: grafeas.v1.IVersion): grafeas.v1.Version;
+
+ /**
+ * Encodes the specified Version message. Does not implicitly {@link grafeas.v1.Version.verify|verify} messages.
+ * @param message Version message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IVersion, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Version message, length delimited. Does not implicitly {@link grafeas.v1.Version.verify|verify} messages.
+ * @param message Version message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IVersion, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Version message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Version
+ * @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): grafeas.v1.Version;
+
+ /**
+ * Decodes a Version message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Version
+ * @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)): grafeas.v1.Version;
+
+ /**
+ * Verifies a Version 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 Version message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Version
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.Version;
+
+ /**
+ * Creates a plain object from a Version message. Also converts values to other types if specified.
+ * @param message Version
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.Version, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Version to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Version
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Version {
+
+ /** VersionKind enum. */
+ enum VersionKind {
+ VERSION_KIND_UNSPECIFIED = 0,
+ NORMAL = 1,
+ MINIMUM = 2,
+ MAXIMUM = 3
+ }
+ }
+
+ /** Properties of an UpgradeNote. */
+ interface IUpgradeNote {
+
+ /** UpgradeNote package */
+ "package"?: (string|null);
+
+ /** UpgradeNote version */
+ version?: (grafeas.v1.IVersion|null);
+
+ /** UpgradeNote distributions */
+ distributions?: (grafeas.v1.IUpgradeDistribution[]|null);
+
+ /** UpgradeNote windowsUpdate */
+ windowsUpdate?: (grafeas.v1.IWindowsUpdate|null);
+ }
+
+ /** Represents an UpgradeNote. */
+ class UpgradeNote implements IUpgradeNote {
+
+ /**
+ * Constructs a new UpgradeNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IUpgradeNote);
+
+ /** UpgradeNote package. */
+ public package: string;
+
+ /** UpgradeNote version. */
+ public version?: (grafeas.v1.IVersion|null);
+
+ /** UpgradeNote distributions. */
+ public distributions: grafeas.v1.IUpgradeDistribution[];
+
+ /** UpgradeNote windowsUpdate. */
+ public windowsUpdate?: (grafeas.v1.IWindowsUpdate|null);
+
+ /**
+ * Creates a new UpgradeNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpgradeNote instance
+ */
+ public static create(properties?: grafeas.v1.IUpgradeNote): grafeas.v1.UpgradeNote;
+
+ /**
+ * Encodes the specified UpgradeNote message. Does not implicitly {@link grafeas.v1.UpgradeNote.verify|verify} messages.
+ * @param message UpgradeNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IUpgradeNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpgradeNote message, length delimited. Does not implicitly {@link grafeas.v1.UpgradeNote.verify|verify} messages.
+ * @param message UpgradeNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IUpgradeNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpgradeNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpgradeNote
+ * @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): grafeas.v1.UpgradeNote;
+
+ /**
+ * Decodes an UpgradeNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpgradeNote
+ * @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)): grafeas.v1.UpgradeNote;
+
+ /**
+ * Verifies an UpgradeNote 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 UpgradeNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpgradeNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.UpgradeNote;
+
+ /**
+ * Creates a plain object from an UpgradeNote message. Also converts values to other types if specified.
+ * @param message UpgradeNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.UpgradeNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpgradeNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpgradeNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpgradeDistribution. */
+ interface IUpgradeDistribution {
+
+ /** UpgradeDistribution cpeUri */
+ cpeUri?: (string|null);
+
+ /** UpgradeDistribution classification */
+ classification?: (string|null);
+
+ /** UpgradeDistribution severity */
+ severity?: (string|null);
+
+ /** UpgradeDistribution cve */
+ cve?: (string[]|null);
+ }
+
+ /** Represents an UpgradeDistribution. */
+ class UpgradeDistribution implements IUpgradeDistribution {
+
+ /**
+ * Constructs a new UpgradeDistribution.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IUpgradeDistribution);
+
+ /** UpgradeDistribution cpeUri. */
+ public cpeUri: string;
+
+ /** UpgradeDistribution classification. */
+ public classification: string;
+
+ /** UpgradeDistribution severity. */
+ public severity: string;
+
+ /** UpgradeDistribution cve. */
+ public cve: string[];
+
+ /**
+ * Creates a new UpgradeDistribution instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpgradeDistribution instance
+ */
+ public static create(properties?: grafeas.v1.IUpgradeDistribution): grafeas.v1.UpgradeDistribution;
+
+ /**
+ * Encodes the specified UpgradeDistribution message. Does not implicitly {@link grafeas.v1.UpgradeDistribution.verify|verify} messages.
+ * @param message UpgradeDistribution message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IUpgradeDistribution, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpgradeDistribution message, length delimited. Does not implicitly {@link grafeas.v1.UpgradeDistribution.verify|verify} messages.
+ * @param message UpgradeDistribution message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IUpgradeDistribution, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpgradeDistribution message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpgradeDistribution
+ * @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): grafeas.v1.UpgradeDistribution;
+
+ /**
+ * Decodes an UpgradeDistribution message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpgradeDistribution
+ * @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)): grafeas.v1.UpgradeDistribution;
+
+ /**
+ * Verifies an UpgradeDistribution 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 UpgradeDistribution message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpgradeDistribution
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.UpgradeDistribution;
+
+ /**
+ * Creates a plain object from an UpgradeDistribution message. Also converts values to other types if specified.
+ * @param message UpgradeDistribution
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.UpgradeDistribution, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpgradeDistribution to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpgradeDistribution
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WindowsUpdate. */
+ interface IWindowsUpdate {
+
+ /** WindowsUpdate identity */
+ identity?: (grafeas.v1.WindowsUpdate.IIdentity|null);
+
+ /** WindowsUpdate title */
+ title?: (string|null);
+
+ /** WindowsUpdate description */
+ description?: (string|null);
+
+ /** WindowsUpdate categories */
+ categories?: (grafeas.v1.WindowsUpdate.ICategory[]|null);
+
+ /** WindowsUpdate kbArticleIds */
+ kbArticleIds?: (string[]|null);
+
+ /** WindowsUpdate supportUrl */
+ supportUrl?: (string|null);
+
+ /** WindowsUpdate lastPublishedTimestamp */
+ lastPublishedTimestamp?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a WindowsUpdate. */
+ class WindowsUpdate implements IWindowsUpdate {
+
+ /**
+ * Constructs a new WindowsUpdate.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IWindowsUpdate);
+
+ /** WindowsUpdate identity. */
+ public identity?: (grafeas.v1.WindowsUpdate.IIdentity|null);
+
+ /** WindowsUpdate title. */
+ public title: string;
+
+ /** WindowsUpdate description. */
+ public description: string;
+
+ /** WindowsUpdate categories. */
+ public categories: grafeas.v1.WindowsUpdate.ICategory[];
+
+ /** WindowsUpdate kbArticleIds. */
+ public kbArticleIds: string[];
+
+ /** WindowsUpdate supportUrl. */
+ public supportUrl: string;
+
+ /** WindowsUpdate lastPublishedTimestamp. */
+ public lastPublishedTimestamp?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new WindowsUpdate instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WindowsUpdate instance
+ */
+ public static create(properties?: grafeas.v1.IWindowsUpdate): grafeas.v1.WindowsUpdate;
+
+ /**
+ * Encodes the specified WindowsUpdate message. Does not implicitly {@link grafeas.v1.WindowsUpdate.verify|verify} messages.
+ * @param message WindowsUpdate message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IWindowsUpdate, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WindowsUpdate message, length delimited. Does not implicitly {@link grafeas.v1.WindowsUpdate.verify|verify} messages.
+ * @param message WindowsUpdate message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IWindowsUpdate, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WindowsUpdate message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WindowsUpdate
+ * @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): grafeas.v1.WindowsUpdate;
+
+ /**
+ * Decodes a WindowsUpdate message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WindowsUpdate
+ * @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)): grafeas.v1.WindowsUpdate;
+
+ /**
+ * Verifies a WindowsUpdate 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 WindowsUpdate message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WindowsUpdate
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.WindowsUpdate;
+
+ /**
+ * Creates a plain object from a WindowsUpdate message. Also converts values to other types if specified.
+ * @param message WindowsUpdate
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.WindowsUpdate, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WindowsUpdate to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WindowsUpdate
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WindowsUpdate {
+
+ /** Properties of an Identity. */
+ interface IIdentity {
+
+ /** Identity updateId */
+ updateId?: (string|null);
+
+ /** Identity revision */
+ revision?: (number|null);
+ }
+
+ /** Represents an Identity. */
+ class Identity implements IIdentity {
+
+ /**
+ * Constructs a new Identity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.WindowsUpdate.IIdentity);
+
+ /** Identity updateId. */
+ public updateId: string;
+
+ /** Identity revision. */
+ public revision: number;
+
+ /**
+ * Creates a new Identity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Identity instance
+ */
+ public static create(properties?: grafeas.v1.WindowsUpdate.IIdentity): grafeas.v1.WindowsUpdate.Identity;
+
+ /**
+ * Encodes the specified Identity message. Does not implicitly {@link grafeas.v1.WindowsUpdate.Identity.verify|verify} messages.
+ * @param message Identity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.WindowsUpdate.IIdentity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Identity message, length delimited. Does not implicitly {@link grafeas.v1.WindowsUpdate.Identity.verify|verify} messages.
+ * @param message Identity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.WindowsUpdate.IIdentity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Identity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Identity
+ * @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): grafeas.v1.WindowsUpdate.Identity;
+
+ /**
+ * Decodes an Identity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Identity
+ * @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)): grafeas.v1.WindowsUpdate.Identity;
+
+ /**
+ * Verifies an Identity 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 Identity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Identity
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.WindowsUpdate.Identity;
+
+ /**
+ * Creates a plain object from an Identity message. Also converts values to other types if specified.
+ * @param message Identity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.WindowsUpdate.Identity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Identity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Identity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Category. */
+ interface ICategory {
+
+ /** Category categoryId */
+ categoryId?: (string|null);
+
+ /** Category name */
+ name?: (string|null);
+ }
+
+ /** Represents a Category. */
+ class Category implements ICategory {
+
+ /**
+ * Constructs a new Category.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.WindowsUpdate.ICategory);
+
+ /** Category categoryId. */
+ public categoryId: string;
+
+ /** Category name. */
+ public name: string;
+
+ /**
+ * Creates a new Category instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Category instance
+ */
+ public static create(properties?: grafeas.v1.WindowsUpdate.ICategory): grafeas.v1.WindowsUpdate.Category;
+
+ /**
+ * Encodes the specified Category message. Does not implicitly {@link grafeas.v1.WindowsUpdate.Category.verify|verify} messages.
+ * @param message Category message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.WindowsUpdate.ICategory, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Category message, length delimited. Does not implicitly {@link grafeas.v1.WindowsUpdate.Category.verify|verify} messages.
+ * @param message Category message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.WindowsUpdate.ICategory, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Category message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Category
+ * @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): grafeas.v1.WindowsUpdate.Category;
+
+ /**
+ * Decodes a Category message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Category
+ * @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)): grafeas.v1.WindowsUpdate.Category;
+
+ /**
+ * Verifies a Category 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 Category message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Category
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.WindowsUpdate.Category;
+
+ /**
+ * Creates a plain object from a Category message. Also converts values to other types if specified.
+ * @param message Category
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.WindowsUpdate.Category, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Category to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Category
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an UpgradeOccurrence. */
+ interface IUpgradeOccurrence {
+
+ /** UpgradeOccurrence package */
+ "package"?: (string|null);
+
+ /** UpgradeOccurrence parsedVersion */
+ parsedVersion?: (grafeas.v1.IVersion|null);
+
+ /** UpgradeOccurrence distribution */
+ distribution?: (grafeas.v1.IUpgradeDistribution|null);
+
+ /** UpgradeOccurrence windowsUpdate */
+ windowsUpdate?: (grafeas.v1.IWindowsUpdate|null);
+ }
+
+ /** Represents an UpgradeOccurrence. */
+ class UpgradeOccurrence implements IUpgradeOccurrence {
+
+ /**
+ * Constructs a new UpgradeOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IUpgradeOccurrence);
+
+ /** UpgradeOccurrence package. */
+ public package: string;
+
+ /** UpgradeOccurrence parsedVersion. */
+ public parsedVersion?: (grafeas.v1.IVersion|null);
+
+ /** UpgradeOccurrence distribution. */
+ public distribution?: (grafeas.v1.IUpgradeDistribution|null);
+
+ /** UpgradeOccurrence windowsUpdate. */
+ public windowsUpdate?: (grafeas.v1.IWindowsUpdate|null);
+
+ /**
+ * Creates a new UpgradeOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpgradeOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IUpgradeOccurrence): grafeas.v1.UpgradeOccurrence;
+
+ /**
+ * Encodes the specified UpgradeOccurrence message. Does not implicitly {@link grafeas.v1.UpgradeOccurrence.verify|verify} messages.
+ * @param message UpgradeOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IUpgradeOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpgradeOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.UpgradeOccurrence.verify|verify} messages.
+ * @param message UpgradeOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IUpgradeOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpgradeOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpgradeOccurrence
+ * @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): grafeas.v1.UpgradeOccurrence;
+
+ /**
+ * Decodes an UpgradeOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpgradeOccurrence
+ * @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)): grafeas.v1.UpgradeOccurrence;
+
+ /**
+ * Verifies an UpgradeOccurrence 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 UpgradeOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpgradeOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.UpgradeOccurrence;
+
+ /**
+ * Creates a plain object from an UpgradeOccurrence message. Also converts values to other types if specified.
+ * @param message UpgradeOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.UpgradeOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpgradeOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpgradeOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a VulnerabilityNote. */
+ interface IVulnerabilityNote {
+
+ /** VulnerabilityNote cvssScore */
+ cvssScore?: (number|null);
+
+ /** VulnerabilityNote severity */
+ severity?: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity|null);
+
+ /** VulnerabilityNote details */
+ details?: (grafeas.v1.VulnerabilityNote.IDetail[]|null);
+
+ /** VulnerabilityNote cvssV3 */
+ cvssV3?: (grafeas.v1.ICVSSv3|null);
+
+ /** VulnerabilityNote windowsDetails */
+ windowsDetails?: (grafeas.v1.VulnerabilityNote.IWindowsDetail[]|null);
+
+ /** VulnerabilityNote sourceUpdateTime */
+ sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /** VulnerabilityNote cvssVersion */
+ cvssVersion?: (grafeas.v1.CVSSVersion|keyof typeof grafeas.v1.CVSSVersion|null);
+ }
+
+ /** Represents a VulnerabilityNote. */
+ class VulnerabilityNote implements IVulnerabilityNote {
+
+ /**
+ * Constructs a new VulnerabilityNote.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IVulnerabilityNote);
+
+ /** VulnerabilityNote cvssScore. */
+ public cvssScore: number;
+
+ /** VulnerabilityNote severity. */
+ public severity: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity);
+
+ /** VulnerabilityNote details. */
+ public details: grafeas.v1.VulnerabilityNote.IDetail[];
+
+ /** VulnerabilityNote cvssV3. */
+ public cvssV3?: (grafeas.v1.ICVSSv3|null);
+
+ /** VulnerabilityNote windowsDetails. */
+ public windowsDetails: grafeas.v1.VulnerabilityNote.IWindowsDetail[];
+
+ /** VulnerabilityNote sourceUpdateTime. */
+ public sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /** VulnerabilityNote cvssVersion. */
+ public cvssVersion: (grafeas.v1.CVSSVersion|keyof typeof grafeas.v1.CVSSVersion);
+
+ /**
+ * Creates a new VulnerabilityNote instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VulnerabilityNote instance
+ */
+ public static create(properties?: grafeas.v1.IVulnerabilityNote): grafeas.v1.VulnerabilityNote;
+
+ /**
+ * Encodes the specified VulnerabilityNote message. Does not implicitly {@link grafeas.v1.VulnerabilityNote.verify|verify} messages.
+ * @param message VulnerabilityNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IVulnerabilityNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VulnerabilityNote message, length delimited. Does not implicitly {@link grafeas.v1.VulnerabilityNote.verify|verify} messages.
+ * @param message VulnerabilityNote message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IVulnerabilityNote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VulnerabilityNote message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VulnerabilityNote
+ * @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): grafeas.v1.VulnerabilityNote;
+
+ /**
+ * Decodes a VulnerabilityNote message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VulnerabilityNote
+ * @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)): grafeas.v1.VulnerabilityNote;
+
+ /**
+ * Verifies a VulnerabilityNote 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 VulnerabilityNote message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VulnerabilityNote
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.VulnerabilityNote;
+
+ /**
+ * Creates a plain object from a VulnerabilityNote message. Also converts values to other types if specified.
+ * @param message VulnerabilityNote
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.VulnerabilityNote, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VulnerabilityNote to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VulnerabilityNote
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace VulnerabilityNote {
+
+ /** Properties of a Detail. */
+ interface IDetail {
+
+ /** Detail severityName */
+ severityName?: (string|null);
+
+ /** Detail description */
+ description?: (string|null);
+
+ /** Detail packageType */
+ packageType?: (string|null);
+
+ /** Detail affectedCpeUri */
+ affectedCpeUri?: (string|null);
+
+ /** Detail affectedPackage */
+ affectedPackage?: (string|null);
+
+ /** Detail affectedVersionStart */
+ affectedVersionStart?: (grafeas.v1.IVersion|null);
+
+ /** Detail affectedVersionEnd */
+ affectedVersionEnd?: (grafeas.v1.IVersion|null);
+
+ /** Detail fixedCpeUri */
+ fixedCpeUri?: (string|null);
+
+ /** Detail fixedPackage */
+ fixedPackage?: (string|null);
+
+ /** Detail fixedVersion */
+ fixedVersion?: (grafeas.v1.IVersion|null);
+
+ /** Detail isObsolete */
+ isObsolete?: (boolean|null);
+
+ /** Detail sourceUpdateTime */
+ sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Detail source */
+ source?: (string|null);
+
+ /** Detail vendor */
+ vendor?: (string|null);
+ }
+
+ /** Represents a Detail. */
+ class Detail implements IDetail {
+
+ /**
+ * Constructs a new Detail.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.VulnerabilityNote.IDetail);
+
+ /** Detail severityName. */
+ public severityName: string;
+
+ /** Detail description. */
+ public description: string;
+
+ /** Detail packageType. */
+ public packageType: string;
+
+ /** Detail affectedCpeUri. */
+ public affectedCpeUri: string;
+
+ /** Detail affectedPackage. */
+ public affectedPackage: string;
+
+ /** Detail affectedVersionStart. */
+ public affectedVersionStart?: (grafeas.v1.IVersion|null);
+
+ /** Detail affectedVersionEnd. */
+ public affectedVersionEnd?: (grafeas.v1.IVersion|null);
+
+ /** Detail fixedCpeUri. */
+ public fixedCpeUri: string;
+
+ /** Detail fixedPackage. */
+ public fixedPackage: string;
+
+ /** Detail fixedVersion. */
+ public fixedVersion?: (grafeas.v1.IVersion|null);
+
+ /** Detail isObsolete. */
+ public isObsolete: boolean;
+
+ /** Detail sourceUpdateTime. */
+ public sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Detail source. */
+ public source: string;
+
+ /** Detail vendor. */
+ public vendor: string;
+
+ /**
+ * Creates a new Detail instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Detail instance
+ */
+ public static create(properties?: grafeas.v1.VulnerabilityNote.IDetail): grafeas.v1.VulnerabilityNote.Detail;
+
+ /**
+ * Encodes the specified Detail message. Does not implicitly {@link grafeas.v1.VulnerabilityNote.Detail.verify|verify} messages.
+ * @param message Detail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.VulnerabilityNote.IDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Detail message, length delimited. Does not implicitly {@link grafeas.v1.VulnerabilityNote.Detail.verify|verify} messages.
+ * @param message Detail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.VulnerabilityNote.IDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Detail message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Detail
+ * @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): grafeas.v1.VulnerabilityNote.Detail;
+
+ /**
+ * Decodes a Detail message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Detail
+ * @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)): grafeas.v1.VulnerabilityNote.Detail;
+
+ /**
+ * Verifies a Detail 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 Detail message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Detail
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.VulnerabilityNote.Detail;
+
+ /**
+ * Creates a plain object from a Detail message. Also converts values to other types if specified.
+ * @param message Detail
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.VulnerabilityNote.Detail, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Detail to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Detail
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WindowsDetail. */
+ interface IWindowsDetail {
+
+ /** WindowsDetail cpeUri */
+ cpeUri?: (string|null);
+
+ /** WindowsDetail name */
+ name?: (string|null);
+
+ /** WindowsDetail description */
+ description?: (string|null);
+
+ /** WindowsDetail fixingKbs */
+ fixingKbs?: (grafeas.v1.VulnerabilityNote.WindowsDetail.IKnowledgeBase[]|null);
+ }
+
+ /** Represents a WindowsDetail. */
+ class WindowsDetail implements IWindowsDetail {
+
+ /**
+ * Constructs a new WindowsDetail.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.VulnerabilityNote.IWindowsDetail);
+
+ /** WindowsDetail cpeUri. */
+ public cpeUri: string;
+
+ /** WindowsDetail name. */
+ public name: string;
+
+ /** WindowsDetail description. */
+ public description: string;
+
+ /** WindowsDetail fixingKbs. */
+ public fixingKbs: grafeas.v1.VulnerabilityNote.WindowsDetail.IKnowledgeBase[];
+
+ /**
+ * Creates a new WindowsDetail instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WindowsDetail instance
+ */
+ public static create(properties?: grafeas.v1.VulnerabilityNote.IWindowsDetail): grafeas.v1.VulnerabilityNote.WindowsDetail;
+
+ /**
+ * Encodes the specified WindowsDetail message. Does not implicitly {@link grafeas.v1.VulnerabilityNote.WindowsDetail.verify|verify} messages.
+ * @param message WindowsDetail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.VulnerabilityNote.IWindowsDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WindowsDetail message, length delimited. Does not implicitly {@link grafeas.v1.VulnerabilityNote.WindowsDetail.verify|verify} messages.
+ * @param message WindowsDetail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.VulnerabilityNote.IWindowsDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WindowsDetail message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WindowsDetail
+ * @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): grafeas.v1.VulnerabilityNote.WindowsDetail;
+
+ /**
+ * Decodes a WindowsDetail message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WindowsDetail
+ * @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)): grafeas.v1.VulnerabilityNote.WindowsDetail;
+
+ /**
+ * Verifies a WindowsDetail 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 WindowsDetail message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WindowsDetail
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.VulnerabilityNote.WindowsDetail;
+
+ /**
+ * Creates a plain object from a WindowsDetail message. Also converts values to other types if specified.
+ * @param message WindowsDetail
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.VulnerabilityNote.WindowsDetail, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WindowsDetail to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WindowsDetail
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WindowsDetail {
+
+ /** Properties of a KnowledgeBase. */
+ interface IKnowledgeBase {
+
+ /** KnowledgeBase name */
+ name?: (string|null);
+
+ /** KnowledgeBase url */
+ url?: (string|null);
+ }
+
+ /** Represents a KnowledgeBase. */
+ class KnowledgeBase implements IKnowledgeBase {
+
+ /**
+ * Constructs a new KnowledgeBase.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.VulnerabilityNote.WindowsDetail.IKnowledgeBase);
+
+ /** KnowledgeBase name. */
+ public name: string;
+
+ /** KnowledgeBase url. */
+ public url: string;
+
+ /**
+ * Creates a new KnowledgeBase instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns KnowledgeBase instance
+ */
+ public static create(properties?: grafeas.v1.VulnerabilityNote.WindowsDetail.IKnowledgeBase): grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Encodes the specified KnowledgeBase message. Does not implicitly {@link grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.verify|verify} messages.
+ * @param message KnowledgeBase message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.VulnerabilityNote.WindowsDetail.IKnowledgeBase, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified KnowledgeBase message, length delimited. Does not implicitly {@link grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.verify|verify} messages.
+ * @param message KnowledgeBase message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.VulnerabilityNote.WindowsDetail.IKnowledgeBase, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a KnowledgeBase message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns KnowledgeBase
+ * @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): grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Decodes a KnowledgeBase message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns KnowledgeBase
+ * @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)): grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Verifies a KnowledgeBase 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 KnowledgeBase message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns KnowledgeBase
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Creates a plain object from a KnowledgeBase message. Also converts values to other types if specified.
+ * @param message KnowledgeBase
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this KnowledgeBase to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for KnowledgeBase
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Properties of a VulnerabilityOccurrence. */
+ interface IVulnerabilityOccurrence {
+
+ /** VulnerabilityOccurrence type */
+ type?: (string|null);
+
+ /** VulnerabilityOccurrence severity */
+ severity?: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity|null);
+
+ /** VulnerabilityOccurrence cvssScore */
+ cvssScore?: (number|null);
+
+ /** VulnerabilityOccurrence cvssv3 */
+ cvssv3?: (grafeas.v1.ICVSS|null);
+
+ /** VulnerabilityOccurrence packageIssue */
+ packageIssue?: (grafeas.v1.VulnerabilityOccurrence.IPackageIssue[]|null);
+
+ /** VulnerabilityOccurrence shortDescription */
+ shortDescription?: (string|null);
+
+ /** VulnerabilityOccurrence longDescription */
+ longDescription?: (string|null);
+
+ /** VulnerabilityOccurrence relatedUrls */
+ relatedUrls?: (grafeas.v1.IRelatedUrl[]|null);
+
+ /** VulnerabilityOccurrence effectiveSeverity */
+ effectiveSeverity?: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity|null);
+
+ /** VulnerabilityOccurrence fixAvailable */
+ fixAvailable?: (boolean|null);
+
+ /** VulnerabilityOccurrence cvssVersion */
+ cvssVersion?: (grafeas.v1.CVSSVersion|keyof typeof grafeas.v1.CVSSVersion|null);
+ }
+
+ /** Represents a VulnerabilityOccurrence. */
+ class VulnerabilityOccurrence implements IVulnerabilityOccurrence {
+
+ /**
+ * Constructs a new VulnerabilityOccurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.IVulnerabilityOccurrence);
+
+ /** VulnerabilityOccurrence type. */
+ public type: string;
+
+ /** VulnerabilityOccurrence severity. */
+ public severity: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity);
+
+ /** VulnerabilityOccurrence cvssScore. */
+ public cvssScore: number;
+
+ /** VulnerabilityOccurrence cvssv3. */
+ public cvssv3?: (grafeas.v1.ICVSS|null);
+
+ /** VulnerabilityOccurrence packageIssue. */
+ public packageIssue: grafeas.v1.VulnerabilityOccurrence.IPackageIssue[];
+
+ /** VulnerabilityOccurrence shortDescription. */
+ public shortDescription: string;
+
+ /** VulnerabilityOccurrence longDescription. */
+ public longDescription: string;
+
+ /** VulnerabilityOccurrence relatedUrls. */
+ public relatedUrls: grafeas.v1.IRelatedUrl[];
+
+ /** VulnerabilityOccurrence effectiveSeverity. */
+ public effectiveSeverity: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity);
+
+ /** VulnerabilityOccurrence fixAvailable. */
+ public fixAvailable: boolean;
+
+ /** VulnerabilityOccurrence cvssVersion. */
+ public cvssVersion: (grafeas.v1.CVSSVersion|keyof typeof grafeas.v1.CVSSVersion);
+
+ /**
+ * Creates a new VulnerabilityOccurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VulnerabilityOccurrence instance
+ */
+ public static create(properties?: grafeas.v1.IVulnerabilityOccurrence): grafeas.v1.VulnerabilityOccurrence;
+
+ /**
+ * Encodes the specified VulnerabilityOccurrence message. Does not implicitly {@link grafeas.v1.VulnerabilityOccurrence.verify|verify} messages.
+ * @param message VulnerabilityOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.IVulnerabilityOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VulnerabilityOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.VulnerabilityOccurrence.verify|verify} messages.
+ * @param message VulnerabilityOccurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.IVulnerabilityOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VulnerabilityOccurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VulnerabilityOccurrence
+ * @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): grafeas.v1.VulnerabilityOccurrence;
+
+ /**
+ * Decodes a VulnerabilityOccurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VulnerabilityOccurrence
+ * @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)): grafeas.v1.VulnerabilityOccurrence;
+
+ /**
+ * Verifies a VulnerabilityOccurrence 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 VulnerabilityOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VulnerabilityOccurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.VulnerabilityOccurrence;
+
+ /**
+ * Creates a plain object from a VulnerabilityOccurrence message. Also converts values to other types if specified.
+ * @param message VulnerabilityOccurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.VulnerabilityOccurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VulnerabilityOccurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VulnerabilityOccurrence
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace VulnerabilityOccurrence {
+
+ /** Properties of a PackageIssue. */
+ interface IPackageIssue {
+
+ /** PackageIssue affectedCpeUri */
+ affectedCpeUri?: (string|null);
+
+ /** PackageIssue affectedPackage */
+ affectedPackage?: (string|null);
+
+ /** PackageIssue affectedVersion */
+ affectedVersion?: (grafeas.v1.IVersion|null);
+
+ /** PackageIssue fixedCpeUri */
+ fixedCpeUri?: (string|null);
+
+ /** PackageIssue fixedPackage */
+ fixedPackage?: (string|null);
+
+ /** PackageIssue fixedVersion */
+ fixedVersion?: (grafeas.v1.IVersion|null);
+
+ /** PackageIssue fixAvailable */
+ fixAvailable?: (boolean|null);
+
+ /** PackageIssue packageType */
+ packageType?: (string|null);
+
+ /** PackageIssue effectiveSeverity */
+ effectiveSeverity?: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity|null);
+
+ /** PackageIssue fileLocation */
+ fileLocation?: (grafeas.v1.IFileLocation[]|null);
+ }
+
+ /** Represents a PackageIssue. */
+ class PackageIssue implements IPackageIssue {
+
+ /**
+ * Constructs a new PackageIssue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1.VulnerabilityOccurrence.IPackageIssue);
+
+ /** PackageIssue affectedCpeUri. */
+ public affectedCpeUri: string;
+
+ /** PackageIssue affectedPackage. */
+ public affectedPackage: string;
+
+ /** PackageIssue affectedVersion. */
+ public affectedVersion?: (grafeas.v1.IVersion|null);
+
+ /** PackageIssue fixedCpeUri. */
+ public fixedCpeUri: string;
+
+ /** PackageIssue fixedPackage. */
+ public fixedPackage: string;
+
+ /** PackageIssue fixedVersion. */
+ public fixedVersion?: (grafeas.v1.IVersion|null);
+
+ /** PackageIssue fixAvailable. */
+ public fixAvailable: boolean;
+
+ /** PackageIssue packageType. */
+ public packageType: string;
+
+ /** PackageIssue effectiveSeverity. */
+ public effectiveSeverity: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity);
+
+ /** PackageIssue fileLocation. */
+ public fileLocation: grafeas.v1.IFileLocation[];
+
+ /**
+ * Creates a new PackageIssue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PackageIssue instance
+ */
+ public static create(properties?: grafeas.v1.VulnerabilityOccurrence.IPackageIssue): grafeas.v1.VulnerabilityOccurrence.PackageIssue;
+
+ /**
+ * Encodes the specified PackageIssue message. Does not implicitly {@link grafeas.v1.VulnerabilityOccurrence.PackageIssue.verify|verify} messages.
+ * @param message PackageIssue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1.VulnerabilityOccurrence.IPackageIssue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PackageIssue message, length delimited. Does not implicitly {@link grafeas.v1.VulnerabilityOccurrence.PackageIssue.verify|verify} messages.
+ * @param message PackageIssue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1.VulnerabilityOccurrence.IPackageIssue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PackageIssue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PackageIssue
+ * @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): grafeas.v1.VulnerabilityOccurrence.PackageIssue;
+
+ /**
+ * Decodes a PackageIssue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PackageIssue
+ * @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)): grafeas.v1.VulnerabilityOccurrence.PackageIssue;
+
+ /**
+ * Verifies a PackageIssue 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 PackageIssue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PackageIssue
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.VulnerabilityOccurrence.PackageIssue;
+
+ /**
+ * Creates a plain object from a PackageIssue message. Also converts values to other types if specified.
+ * @param message PackageIssue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1.VulnerabilityOccurrence.PackageIssue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PackageIssue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PackageIssue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Namespace v1beta1. */
+ namespace v1beta1 {
+
+ /** Namespace attestation. */
+ namespace attestation {
+
+ /** Properties of a PgpSignedAttestation. */
+ interface IPgpSignedAttestation {
+
+ /** PgpSignedAttestation signature */
+ signature?: (string|null);
+
+ /** PgpSignedAttestation contentType */
+ contentType?: (grafeas.v1beta1.attestation.PgpSignedAttestation.ContentType|keyof typeof grafeas.v1beta1.attestation.PgpSignedAttestation.ContentType|null);
+
+ /** PgpSignedAttestation pgpKeyId */
+ pgpKeyId?: (string|null);
+ }
+
+ /** Represents a PgpSignedAttestation. */
+ class PgpSignedAttestation implements IPgpSignedAttestation {
+
+ /**
+ * Constructs a new PgpSignedAttestation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.attestation.IPgpSignedAttestation);
+
+ /** PgpSignedAttestation signature. */
+ public signature: string;
+
+ /** PgpSignedAttestation contentType. */
+ public contentType: (grafeas.v1beta1.attestation.PgpSignedAttestation.ContentType|keyof typeof grafeas.v1beta1.attestation.PgpSignedAttestation.ContentType);
+
+ /** PgpSignedAttestation pgpKeyId. */
+ public pgpKeyId?: (string|null);
+
+ /** PgpSignedAttestation keyId. */
+ public keyId?: "pgpKeyId";
+
+ /**
+ * Creates a new PgpSignedAttestation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PgpSignedAttestation instance
+ */
+ public static create(properties?: grafeas.v1beta1.attestation.IPgpSignedAttestation): grafeas.v1beta1.attestation.PgpSignedAttestation;
+
+ /**
+ * Encodes the specified PgpSignedAttestation message. Does not implicitly {@link grafeas.v1beta1.attestation.PgpSignedAttestation.verify|verify} messages.
+ * @param message PgpSignedAttestation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.attestation.IPgpSignedAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PgpSignedAttestation message, length delimited. Does not implicitly {@link grafeas.v1beta1.attestation.PgpSignedAttestation.verify|verify} messages.
+ * @param message PgpSignedAttestation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.attestation.IPgpSignedAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PgpSignedAttestation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PgpSignedAttestation
+ * @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): grafeas.v1beta1.attestation.PgpSignedAttestation;
+
+ /**
+ * Decodes a PgpSignedAttestation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PgpSignedAttestation
+ * @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)): grafeas.v1beta1.attestation.PgpSignedAttestation;
+
+ /**
+ * Verifies a PgpSignedAttestation 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 PgpSignedAttestation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PgpSignedAttestation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.attestation.PgpSignedAttestation;
+
+ /**
+ * Creates a plain object from a PgpSignedAttestation message. Also converts values to other types if specified.
+ * @param message PgpSignedAttestation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.attestation.PgpSignedAttestation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PgpSignedAttestation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PgpSignedAttestation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace PgpSignedAttestation {
+
+ /** ContentType enum. */
+ enum ContentType {
+ CONTENT_TYPE_UNSPECIFIED = 0,
+ SIMPLE_SIGNING_JSON = 1
+ }
+ }
+
+ /** Properties of a GenericSignedAttestation. */
+ interface IGenericSignedAttestation {
+
+ /** GenericSignedAttestation contentType */
+ contentType?: (grafeas.v1beta1.attestation.GenericSignedAttestation.ContentType|keyof typeof grafeas.v1beta1.attestation.GenericSignedAttestation.ContentType|null);
+
+ /** GenericSignedAttestation serializedPayload */
+ serializedPayload?: (Uint8Array|string|null);
+
+ /** GenericSignedAttestation signatures */
+ signatures?: (grafeas.v1beta1.ISignature[]|null);
+ }
+
+ /** Represents a GenericSignedAttestation. */
+ class GenericSignedAttestation implements IGenericSignedAttestation {
+
+ /**
+ * Constructs a new GenericSignedAttestation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.attestation.IGenericSignedAttestation);
+
+ /** GenericSignedAttestation contentType. */
+ public contentType: (grafeas.v1beta1.attestation.GenericSignedAttestation.ContentType|keyof typeof grafeas.v1beta1.attestation.GenericSignedAttestation.ContentType);
+
+ /** GenericSignedAttestation serializedPayload. */
+ public serializedPayload: (Uint8Array|string);
+
+ /** GenericSignedAttestation signatures. */
+ public signatures: grafeas.v1beta1.ISignature[];
+
+ /**
+ * Creates a new GenericSignedAttestation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GenericSignedAttestation instance
+ */
+ public static create(properties?: grafeas.v1beta1.attestation.IGenericSignedAttestation): grafeas.v1beta1.attestation.GenericSignedAttestation;
+
+ /**
+ * Encodes the specified GenericSignedAttestation message. Does not implicitly {@link grafeas.v1beta1.attestation.GenericSignedAttestation.verify|verify} messages.
+ * @param message GenericSignedAttestation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.attestation.IGenericSignedAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GenericSignedAttestation message, length delimited. Does not implicitly {@link grafeas.v1beta1.attestation.GenericSignedAttestation.verify|verify} messages.
+ * @param message GenericSignedAttestation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.attestation.IGenericSignedAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GenericSignedAttestation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GenericSignedAttestation
+ * @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): grafeas.v1beta1.attestation.GenericSignedAttestation;
+
+ /**
+ * Decodes a GenericSignedAttestation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GenericSignedAttestation
+ * @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)): grafeas.v1beta1.attestation.GenericSignedAttestation;
+
+ /**
+ * Verifies a GenericSignedAttestation 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 GenericSignedAttestation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GenericSignedAttestation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.attestation.GenericSignedAttestation;
+
+ /**
+ * Creates a plain object from a GenericSignedAttestation message. Also converts values to other types if specified.
+ * @param message GenericSignedAttestation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.attestation.GenericSignedAttestation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GenericSignedAttestation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GenericSignedAttestation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GenericSignedAttestation {
+
+ /** ContentType enum. */
+ enum ContentType {
+ CONTENT_TYPE_UNSPECIFIED = 0,
+ SIMPLE_SIGNING_JSON = 1
+ }
+ }
+
+ /** Properties of an Authority. */
+ interface IAuthority {
+
+ /** Authority hint */
+ hint?: (grafeas.v1beta1.attestation.Authority.IHint|null);
+ }
+
+ /** Represents an Authority. */
+ class Authority implements IAuthority {
+
+ /**
+ * Constructs a new Authority.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.attestation.IAuthority);
+
+ /** Authority hint. */
+ public hint?: (grafeas.v1beta1.attestation.Authority.IHint|null);
+
+ /**
+ * Creates a new Authority instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Authority instance
+ */
+ public static create(properties?: grafeas.v1beta1.attestation.IAuthority): grafeas.v1beta1.attestation.Authority;
+
+ /**
+ * Encodes the specified Authority message. Does not implicitly {@link grafeas.v1beta1.attestation.Authority.verify|verify} messages.
+ * @param message Authority message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.attestation.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Authority message, length delimited. Does not implicitly {@link grafeas.v1beta1.attestation.Authority.verify|verify} messages.
+ * @param message Authority message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.attestation.IAuthority, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Authority message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Authority
+ * @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): grafeas.v1beta1.attestation.Authority;
+
+ /**
+ * Decodes an Authority message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Authority
+ * @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)): grafeas.v1beta1.attestation.Authority;
+
+ /**
+ * Verifies an Authority 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 Authority message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Authority
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.attestation.Authority;
+
+ /**
+ * Creates a plain object from an Authority message. Also converts values to other types if specified.
+ * @param message Authority
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.attestation.Authority, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Authority to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Authority
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Authority {
+
+ /** Properties of a Hint. */
+ interface IHint {
+
+ /** Hint humanReadableName */
+ humanReadableName?: (string|null);
+ }
+
+ /** Represents a Hint. */
+ class Hint implements IHint {
+
+ /**
+ * Constructs a new Hint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.attestation.Authority.IHint);
+
+ /** Hint humanReadableName. */
+ public humanReadableName: string;
+
+ /**
+ * Creates a new Hint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Hint instance
+ */
+ public static create(properties?: grafeas.v1beta1.attestation.Authority.IHint): grafeas.v1beta1.attestation.Authority.Hint;
+
+ /**
+ * Encodes the specified Hint message. Does not implicitly {@link grafeas.v1beta1.attestation.Authority.Hint.verify|verify} messages.
+ * @param message Hint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.attestation.Authority.IHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Hint message, length delimited. Does not implicitly {@link grafeas.v1beta1.attestation.Authority.Hint.verify|verify} messages.
+ * @param message Hint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.attestation.Authority.IHint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Hint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Hint
+ * @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): grafeas.v1beta1.attestation.Authority.Hint;
+
+ /**
+ * Decodes a Hint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Hint
+ * @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)): grafeas.v1beta1.attestation.Authority.Hint;
+
+ /**
+ * Verifies a Hint 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 Hint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Hint
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.attestation.Authority.Hint;
+
+ /**
+ * Creates a plain object from a Hint message. Also converts values to other types if specified.
+ * @param message Hint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.attestation.Authority.Hint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Hint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Hint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details attestation */
+ attestation?: (grafeas.v1beta1.attestation.IAttestation|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.attestation.IDetails);
+
+ /** Details attestation. */
+ public attestation?: (grafeas.v1beta1.attestation.IAttestation|null);
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.attestation.IDetails): grafeas.v1beta1.attestation.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.attestation.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.attestation.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.attestation.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.attestation.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.attestation.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.attestation.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.attestation.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.attestation.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Attestation. */
+ interface IAttestation {
+
+ /** Attestation pgpSignedAttestation */
+ pgpSignedAttestation?: (grafeas.v1beta1.attestation.IPgpSignedAttestation|null);
+
+ /** Attestation genericSignedAttestation */
+ genericSignedAttestation?: (grafeas.v1beta1.attestation.IGenericSignedAttestation|null);
+ }
+
+ /** Represents an Attestation. */
+ class Attestation implements IAttestation {
+
+ /**
+ * Constructs a new Attestation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.attestation.IAttestation);
+
+ /** Attestation pgpSignedAttestation. */
+ public pgpSignedAttestation?: (grafeas.v1beta1.attestation.IPgpSignedAttestation|null);
+
+ /** Attestation genericSignedAttestation. */
+ public genericSignedAttestation?: (grafeas.v1beta1.attestation.IGenericSignedAttestation|null);
+
+ /** Attestation signature. */
+ public signature?: ("pgpSignedAttestation"|"genericSignedAttestation");
+
+ /**
+ * Creates a new Attestation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Attestation instance
+ */
+ public static create(properties?: grafeas.v1beta1.attestation.IAttestation): grafeas.v1beta1.attestation.Attestation;
+
+ /**
+ * Encodes the specified Attestation message. Does not implicitly {@link grafeas.v1beta1.attestation.Attestation.verify|verify} messages.
+ * @param message Attestation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.attestation.IAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Attestation message, length delimited. Does not implicitly {@link grafeas.v1beta1.attestation.Attestation.verify|verify} messages.
+ * @param message Attestation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.attestation.IAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Attestation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Attestation
+ * @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): grafeas.v1beta1.attestation.Attestation;
+
+ /**
+ * Decodes an Attestation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Attestation
+ * @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)): grafeas.v1beta1.attestation.Attestation;
+
+ /**
+ * Verifies an Attestation 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 Attestation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Attestation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.attestation.Attestation;
+
+ /**
+ * Creates a plain object from an Attestation message. Also converts values to other types if specified.
+ * @param message Attestation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.attestation.Attestation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Attestation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Attestation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** NoteKind enum. */
+ enum NoteKind {
+ NOTE_KIND_UNSPECIFIED = 0,
+ VULNERABILITY = 1,
+ BUILD = 2,
+ IMAGE = 3,
+ PACKAGE = 4,
+ DEPLOYMENT = 5,
+ DISCOVERY = 6,
+ ATTESTATION = 7
+ }
+
+ /** Properties of a RelatedUrl. */
+ interface IRelatedUrl {
+
+ /** RelatedUrl url */
+ url?: (string|null);
+
+ /** RelatedUrl label */
+ label?: (string|null);
+ }
+
+ /** Represents a RelatedUrl. */
+ class RelatedUrl implements IRelatedUrl {
+
+ /**
+ * Constructs a new RelatedUrl.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IRelatedUrl);
+
+ /** RelatedUrl url. */
+ public url: string;
+
+ /** RelatedUrl label. */
+ public label: string;
+
+ /**
+ * Creates a new RelatedUrl instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RelatedUrl instance
+ */
+ public static create(properties?: grafeas.v1beta1.IRelatedUrl): grafeas.v1beta1.RelatedUrl;
+
+ /**
+ * Encodes the specified RelatedUrl message. Does not implicitly {@link grafeas.v1beta1.RelatedUrl.verify|verify} messages.
+ * @param message RelatedUrl message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IRelatedUrl, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RelatedUrl message, length delimited. Does not implicitly {@link grafeas.v1beta1.RelatedUrl.verify|verify} messages.
+ * @param message RelatedUrl message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IRelatedUrl, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RelatedUrl message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RelatedUrl
+ * @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): grafeas.v1beta1.RelatedUrl;
+
+ /**
+ * Decodes a RelatedUrl message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RelatedUrl
+ * @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)): grafeas.v1beta1.RelatedUrl;
+
+ /**
+ * Verifies a RelatedUrl 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 RelatedUrl message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RelatedUrl
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.RelatedUrl;
+
+ /**
+ * Creates a plain object from a RelatedUrl message. Also converts values to other types if specified.
+ * @param message RelatedUrl
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.RelatedUrl, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RelatedUrl to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RelatedUrl
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Signature. */
+ interface ISignature {
+
+ /** Signature signature */
+ signature?: (Uint8Array|string|null);
+
+ /** Signature publicKeyId */
+ publicKeyId?: (string|null);
+ }
+
+ /** Represents a Signature. */
+ class Signature implements ISignature {
+
+ /**
+ * Constructs a new Signature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.ISignature);
+
+ /** Signature signature. */
+ public signature: (Uint8Array|string);
+
+ /** Signature publicKeyId. */
+ public publicKeyId: string;
+
+ /**
+ * Creates a new Signature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Signature instance
+ */
+ public static create(properties?: grafeas.v1beta1.ISignature): grafeas.v1beta1.Signature;
+
+ /**
+ * Encodes the specified Signature message. Does not implicitly {@link grafeas.v1beta1.Signature.verify|verify} messages.
+ * @param message Signature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.ISignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Signature message, length delimited. Does not implicitly {@link grafeas.v1beta1.Signature.verify|verify} messages.
+ * @param message Signature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.ISignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Signature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Signature
+ * @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): grafeas.v1beta1.Signature;
+
+ /**
+ * Decodes a Signature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Signature
+ * @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)): grafeas.v1beta1.Signature;
+
+ /**
+ * Verifies a Signature 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 Signature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Signature
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.Signature;
+
+ /**
+ * Creates a plain object from a Signature message. Also converts values to other types if specified.
+ * @param message Signature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.Signature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Signature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Signature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Namespace build. */
+ namespace build {
+
+ /** Properties of a Build. */
+ interface IBuild {
+
+ /** Build builderVersion */
+ builderVersion?: (string|null);
+
+ /** Build signature */
+ signature?: (grafeas.v1beta1.build.IBuildSignature|null);
+ }
+
+ /** Represents a Build. */
+ class Build implements IBuild {
+
+ /**
+ * Constructs a new Build.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.build.IBuild);
+
+ /** Build builderVersion. */
+ public builderVersion: string;
+
+ /** Build signature. */
+ public signature?: (grafeas.v1beta1.build.IBuildSignature|null);
+
+ /**
+ * Creates a new Build instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Build instance
+ */
+ public static create(properties?: grafeas.v1beta1.build.IBuild): grafeas.v1beta1.build.Build;
+
+ /**
+ * Encodes the specified Build message. Does not implicitly {@link grafeas.v1beta1.build.Build.verify|verify} messages.
+ * @param message Build message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.build.IBuild, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Build message, length delimited. Does not implicitly {@link grafeas.v1beta1.build.Build.verify|verify} messages.
+ * @param message Build message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.build.IBuild, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Build message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Build
+ * @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): grafeas.v1beta1.build.Build;
+
+ /**
+ * Decodes a Build message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Build
+ * @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)): grafeas.v1beta1.build.Build;
+
+ /**
+ * Verifies a Build 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 Build message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Build
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.build.Build;
+
+ /**
+ * Creates a plain object from a Build message. Also converts values to other types if specified.
+ * @param message Build
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.build.Build, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Build to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Build
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BuildSignature. */
+ interface IBuildSignature {
+
+ /** BuildSignature publicKey */
+ publicKey?: (string|null);
+
+ /** BuildSignature signature */
+ signature?: (Uint8Array|string|null);
+
+ /** BuildSignature keyId */
+ keyId?: (string|null);
+
+ /** BuildSignature keyType */
+ keyType?: (grafeas.v1beta1.build.BuildSignature.KeyType|keyof typeof grafeas.v1beta1.build.BuildSignature.KeyType|null);
+ }
+
+ /** Represents a BuildSignature. */
+ class BuildSignature implements IBuildSignature {
+
+ /**
+ * Constructs a new BuildSignature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.build.IBuildSignature);
+
+ /** BuildSignature publicKey. */
+ public publicKey: string;
+
+ /** BuildSignature signature. */
+ public signature: (Uint8Array|string);
+
+ /** BuildSignature keyId. */
+ public keyId: string;
+
+ /** BuildSignature keyType. */
+ public keyType: (grafeas.v1beta1.build.BuildSignature.KeyType|keyof typeof grafeas.v1beta1.build.BuildSignature.KeyType);
+
+ /**
+ * Creates a new BuildSignature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BuildSignature instance
+ */
+ public static create(properties?: grafeas.v1beta1.build.IBuildSignature): grafeas.v1beta1.build.BuildSignature;
+
+ /**
+ * Encodes the specified BuildSignature message. Does not implicitly {@link grafeas.v1beta1.build.BuildSignature.verify|verify} messages.
+ * @param message BuildSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.build.IBuildSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BuildSignature message, length delimited. Does not implicitly {@link grafeas.v1beta1.build.BuildSignature.verify|verify} messages.
+ * @param message BuildSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.build.IBuildSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BuildSignature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BuildSignature
+ * @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): grafeas.v1beta1.build.BuildSignature;
+
+ /**
+ * Decodes a BuildSignature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BuildSignature
+ * @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)): grafeas.v1beta1.build.BuildSignature;
+
+ /**
+ * Verifies a BuildSignature 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 BuildSignature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BuildSignature
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.build.BuildSignature;
+
+ /**
+ * Creates a plain object from a BuildSignature message. Also converts values to other types if specified.
+ * @param message BuildSignature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.build.BuildSignature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BuildSignature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BuildSignature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BuildSignature {
+
+ /** KeyType enum. */
+ enum KeyType {
+ KEY_TYPE_UNSPECIFIED = 0,
+ PGP_ASCII_ARMORED = 1,
+ PKIX_PEM = 2
+ }
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details provenance */
+ provenance?: (grafeas.v1beta1.provenance.IBuildProvenance|null);
+
+ /** Details provenanceBytes */
+ provenanceBytes?: (string|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.build.IDetails);
+
+ /** Details provenance. */
+ public provenance?: (grafeas.v1beta1.provenance.IBuildProvenance|null);
+
+ /** Details provenanceBytes. */
+ public provenanceBytes: string;
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.build.IDetails): grafeas.v1beta1.build.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.build.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.build.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.build.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.build.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.build.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.build.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.build.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.build.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace provenance. */
+ namespace provenance {
+
+ /** Properties of a BuildProvenance. */
+ interface IBuildProvenance {
+
+ /** BuildProvenance id */
+ id?: (string|null);
+
+ /** BuildProvenance projectId */
+ projectId?: (string|null);
+
+ /** BuildProvenance commands */
+ commands?: (grafeas.v1beta1.provenance.ICommand[]|null);
+
+ /** BuildProvenance builtArtifacts */
+ builtArtifacts?: (grafeas.v1beta1.provenance.IArtifact[]|null);
+
+ /** BuildProvenance createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance creator */
+ creator?: (string|null);
+
+ /** BuildProvenance logsUri */
+ logsUri?: (string|null);
+
+ /** BuildProvenance sourceProvenance */
+ sourceProvenance?: (grafeas.v1beta1.provenance.ISource|null);
+
+ /** BuildProvenance triggerId */
+ triggerId?: (string|null);
+
+ /** BuildProvenance buildOptions */
+ buildOptions?: ({ [k: string]: string }|null);
+
+ /** BuildProvenance builderVersion */
+ builderVersion?: (string|null);
+ }
+
+ /** Represents a BuildProvenance. */
+ class BuildProvenance implements IBuildProvenance {
+
+ /**
+ * Constructs a new BuildProvenance.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.provenance.IBuildProvenance);
+
+ /** BuildProvenance id. */
+ public id: string;
+
+ /** BuildProvenance projectId. */
+ public projectId: string;
+
+ /** BuildProvenance commands. */
+ public commands: grafeas.v1beta1.provenance.ICommand[];
+
+ /** BuildProvenance builtArtifacts. */
+ public builtArtifacts: grafeas.v1beta1.provenance.IArtifact[];
+
+ /** BuildProvenance createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /** BuildProvenance creator. */
+ public creator: string;
+
+ /** BuildProvenance logsUri. */
+ public logsUri: string;
+
+ /** BuildProvenance sourceProvenance. */
+ public sourceProvenance?: (grafeas.v1beta1.provenance.ISource|null);
+
+ /** BuildProvenance triggerId. */
+ public triggerId: string;
+
+ /** BuildProvenance buildOptions. */
+ public buildOptions: { [k: string]: string };
+
+ /** BuildProvenance builderVersion. */
+ public builderVersion: string;
+
+ /**
+ * Creates a new BuildProvenance instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BuildProvenance instance
+ */
+ public static create(properties?: grafeas.v1beta1.provenance.IBuildProvenance): grafeas.v1beta1.provenance.BuildProvenance;
+
+ /**
+ * Encodes the specified BuildProvenance message. Does not implicitly {@link grafeas.v1beta1.provenance.BuildProvenance.verify|verify} messages.
+ * @param message BuildProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.provenance.IBuildProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BuildProvenance message, length delimited. Does not implicitly {@link grafeas.v1beta1.provenance.BuildProvenance.verify|verify} messages.
+ * @param message BuildProvenance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.provenance.IBuildProvenance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BuildProvenance message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BuildProvenance
+ * @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): grafeas.v1beta1.provenance.BuildProvenance;
+
+ /**
+ * Decodes a BuildProvenance message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BuildProvenance
+ * @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)): grafeas.v1beta1.provenance.BuildProvenance;
+
+ /**
+ * Verifies a BuildProvenance 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 BuildProvenance message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BuildProvenance
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.provenance.BuildProvenance;
+
+ /**
+ * Creates a plain object from a BuildProvenance message. Also converts values to other types if specified.
+ * @param message BuildProvenance
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.provenance.BuildProvenance, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BuildProvenance to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BuildProvenance
+ * @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 artifactStorageSourceUri */
+ artifactStorageSourceUri?: (string|null);
+
+ /** Source fileHashes */
+ fileHashes?: ({ [k: string]: grafeas.v1beta1.provenance.IFileHashes }|null);
+
+ /** Source context */
+ context?: (grafeas.v1beta1.source.ISourceContext|null);
+
+ /** Source additionalContexts */
+ additionalContexts?: (grafeas.v1beta1.source.ISourceContext[]|null);
+ }
+
+ /** Represents a Source. */
+ class Source implements ISource {
+
+ /**
+ * Constructs a new Source.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.provenance.ISource);
+
+ /** Source artifactStorageSourceUri. */
+ public artifactStorageSourceUri: string;
+
+ /** Source fileHashes. */
+ public fileHashes: { [k: string]: grafeas.v1beta1.provenance.IFileHashes };
+
+ /** Source context. */
+ public context?: (grafeas.v1beta1.source.ISourceContext|null);
+
+ /** Source additionalContexts. */
+ public additionalContexts: grafeas.v1beta1.source.ISourceContext[];
+
+ /**
+ * Creates a new Source instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Source instance
+ */
+ public static create(properties?: grafeas.v1beta1.provenance.ISource): grafeas.v1beta1.provenance.Source;
+
+ /**
+ * Encodes the specified Source message. Does not implicitly {@link grafeas.v1beta1.provenance.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: grafeas.v1beta1.provenance.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Source message, length delimited. Does not implicitly {@link grafeas.v1beta1.provenance.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: grafeas.v1beta1.provenance.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): grafeas.v1beta1.provenance.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)): grafeas.v1beta1.provenance.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 }): grafeas.v1beta1.provenance.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: grafeas.v1beta1.provenance.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;
+ }
+
+ /** Properties of a FileHashes. */
+ interface IFileHashes {
+
+ /** FileHashes fileHash */
+ fileHash?: (grafeas.v1beta1.provenance.IHash[]|null);
+ }
+
+ /** Represents a FileHashes. */
+ class FileHashes implements IFileHashes {
+
+ /**
+ * Constructs a new FileHashes.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.provenance.IFileHashes);
+
+ /** FileHashes fileHash. */
+ public fileHash: grafeas.v1beta1.provenance.IHash[];
+
+ /**
+ * Creates a new FileHashes instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileHashes instance
+ */
+ public static create(properties?: grafeas.v1beta1.provenance.IFileHashes): grafeas.v1beta1.provenance.FileHashes;
+
+ /**
+ * Encodes the specified FileHashes message. Does not implicitly {@link grafeas.v1beta1.provenance.FileHashes.verify|verify} messages.
+ * @param message FileHashes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.provenance.IFileHashes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileHashes message, length delimited. Does not implicitly {@link grafeas.v1beta1.provenance.FileHashes.verify|verify} messages.
+ * @param message FileHashes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.provenance.IFileHashes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileHashes message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileHashes
+ * @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): grafeas.v1beta1.provenance.FileHashes;
+
+ /**
+ * Decodes a FileHashes message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileHashes
+ * @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)): grafeas.v1beta1.provenance.FileHashes;
+
+ /**
+ * Verifies a FileHashes 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 FileHashes message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileHashes
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.provenance.FileHashes;
+
+ /**
+ * Creates a plain object from a FileHashes message. Also converts values to other types if specified.
+ * @param message FileHashes
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.provenance.FileHashes, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileHashes to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileHashes
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Hash. */
+ interface IHash {
+
+ /** Hash type */
+ type?: (grafeas.v1beta1.provenance.Hash.HashType|keyof typeof grafeas.v1beta1.provenance.Hash.HashType|null);
+
+ /** Hash value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents a Hash. */
+ class Hash implements IHash {
+
+ /**
+ * Constructs a new Hash.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.provenance.IHash);
+
+ /** Hash type. */
+ public type: (grafeas.v1beta1.provenance.Hash.HashType|keyof typeof grafeas.v1beta1.provenance.Hash.HashType);
+
+ /** Hash value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new Hash instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Hash instance
+ */
+ public static create(properties?: grafeas.v1beta1.provenance.IHash): grafeas.v1beta1.provenance.Hash;
+
+ /**
+ * Encodes the specified Hash message. Does not implicitly {@link grafeas.v1beta1.provenance.Hash.verify|verify} messages.
+ * @param message Hash message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.provenance.IHash, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Hash message, length delimited. Does not implicitly {@link grafeas.v1beta1.provenance.Hash.verify|verify} messages.
+ * @param message Hash message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.provenance.IHash, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Hash message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Hash
+ * @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): grafeas.v1beta1.provenance.Hash;
+
+ /**
+ * Decodes a Hash message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Hash
+ * @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)): grafeas.v1beta1.provenance.Hash;
+
+ /**
+ * Verifies a Hash 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 Hash message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Hash
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.provenance.Hash;
+
+ /**
+ * Creates a plain object from a Hash message. Also converts values to other types if specified.
+ * @param message Hash
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.provenance.Hash, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Hash to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Hash
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Hash {
+
+ /** HashType enum. */
+ enum HashType {
+ HASH_TYPE_UNSPECIFIED = 0,
+ SHA256 = 1
+ }
+ }
+
+ /** Properties of a Command. */
+ interface ICommand {
+
+ /** Command name */
+ name?: (string|null);
+
+ /** Command env */
+ env?: (string[]|null);
+
+ /** Command args */
+ args?: (string[]|null);
+
+ /** Command dir */
+ dir?: (string|null);
+
+ /** Command id */
+ id?: (string|null);
+
+ /** Command waitFor */
+ waitFor?: (string[]|null);
+ }
+
+ /** Represents a Command. */
+ class Command implements ICommand {
+
+ /**
+ * Constructs a new Command.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.provenance.ICommand);
+
+ /** Command name. */
+ public name: string;
+
+ /** Command env. */
+ public env: string[];
+
+ /** Command args. */
+ public args: string[];
+
+ /** Command dir. */
+ public dir: string;
+
+ /** Command id. */
+ public id: string;
+
+ /** Command waitFor. */
+ public waitFor: string[];
+
+ /**
+ * Creates a new Command instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Command instance
+ */
+ public static create(properties?: grafeas.v1beta1.provenance.ICommand): grafeas.v1beta1.provenance.Command;
+
+ /**
+ * Encodes the specified Command message. Does not implicitly {@link grafeas.v1beta1.provenance.Command.verify|verify} messages.
+ * @param message Command message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.provenance.ICommand, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Command message, length delimited. Does not implicitly {@link grafeas.v1beta1.provenance.Command.verify|verify} messages.
+ * @param message Command message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.provenance.ICommand, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Command message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Command
+ * @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): grafeas.v1beta1.provenance.Command;
+
+ /**
+ * Decodes a Command message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Command
+ * @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)): grafeas.v1beta1.provenance.Command;
+
+ /**
+ * Verifies a Command 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 Command message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Command
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.provenance.Command;
+
+ /**
+ * Creates a plain object from a Command message. Also converts values to other types if specified.
+ * @param message Command
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.provenance.Command, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Command to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Command
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Artifact. */
+ interface IArtifact {
+
+ /** Artifact checksum */
+ checksum?: (string|null);
+
+ /** Artifact id */
+ id?: (string|null);
+
+ /** Artifact names */
+ names?: (string[]|null);
+ }
+
+ /** Represents an Artifact. */
+ class Artifact implements IArtifact {
+
+ /**
+ * Constructs a new Artifact.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.provenance.IArtifact);
+
+ /** Artifact checksum. */
+ public checksum: string;
+
+ /** Artifact id. */
+ public id: string;
+
+ /** Artifact names. */
+ public names: string[];
+
+ /**
+ * Creates a new Artifact instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Artifact instance
+ */
+ public static create(properties?: grafeas.v1beta1.provenance.IArtifact): grafeas.v1beta1.provenance.Artifact;
+
+ /**
+ * Encodes the specified Artifact message. Does not implicitly {@link grafeas.v1beta1.provenance.Artifact.verify|verify} messages.
+ * @param message Artifact message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.provenance.IArtifact, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Artifact message, length delimited. Does not implicitly {@link grafeas.v1beta1.provenance.Artifact.verify|verify} messages.
+ * @param message Artifact message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.provenance.IArtifact, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Artifact message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Artifact
+ * @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): grafeas.v1beta1.provenance.Artifact;
+
+ /**
+ * Decodes an Artifact message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Artifact
+ * @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)): grafeas.v1beta1.provenance.Artifact;
+
+ /**
+ * Verifies an Artifact 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 Artifact message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Artifact
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.provenance.Artifact;
+
+ /**
+ * Creates a plain object from an Artifact message. Also converts values to other types if specified.
+ * @param message Artifact
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.provenance.Artifact, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Artifact to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Artifact
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace source. */
+ namespace source {
+
+ /** Properties of a SourceContext. */
+ interface ISourceContext {
+
+ /** SourceContext cloudRepo */
+ cloudRepo?: (grafeas.v1beta1.source.ICloudRepoSourceContext|null);
+
+ /** SourceContext gerrit */
+ gerrit?: (grafeas.v1beta1.source.IGerritSourceContext|null);
+
+ /** SourceContext git */
+ git?: (grafeas.v1beta1.source.IGitSourceContext|null);
+
+ /** SourceContext labels */
+ labels?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a SourceContext. */
+ class SourceContext implements ISourceContext {
+
+ /**
+ * Constructs a new SourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.ISourceContext);
+
+ /** SourceContext cloudRepo. */
+ public cloudRepo?: (grafeas.v1beta1.source.ICloudRepoSourceContext|null);
+
+ /** SourceContext gerrit. */
+ public gerrit?: (grafeas.v1beta1.source.IGerritSourceContext|null);
+
+ /** SourceContext git. */
+ public git?: (grafeas.v1beta1.source.IGitSourceContext|null);
+
+ /** SourceContext labels. */
+ public labels: { [k: string]: string };
+
+ /** SourceContext context. */
+ public context?: ("cloudRepo"|"gerrit"|"git");
+
+ /**
+ * Creates a new SourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SourceContext instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.ISourceContext): grafeas.v1beta1.source.SourceContext;
+
+ /**
+ * Encodes the specified SourceContext message. Does not implicitly {@link grafeas.v1beta1.source.SourceContext.verify|verify} messages.
+ * @param message SourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.ISourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SourceContext message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.SourceContext.verify|verify} messages.
+ * @param message SourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.ISourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SourceContext
+ * @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): grafeas.v1beta1.source.SourceContext;
+
+ /**
+ * Decodes a SourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SourceContext
+ * @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)): grafeas.v1beta1.source.SourceContext;
+
+ /**
+ * Verifies a SourceContext 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 SourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.SourceContext;
+
+ /**
+ * Creates a plain object from a SourceContext message. Also converts values to other types if specified.
+ * @param message SourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.SourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AliasContext. */
+ interface IAliasContext {
+
+ /** AliasContext kind */
+ kind?: (grafeas.v1beta1.source.AliasContext.Kind|keyof typeof grafeas.v1beta1.source.AliasContext.Kind|null);
+
+ /** AliasContext name */
+ name?: (string|null);
+ }
+
+ /** Represents an AliasContext. */
+ class AliasContext implements IAliasContext {
+
+ /**
+ * Constructs a new AliasContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.IAliasContext);
+
+ /** AliasContext kind. */
+ public kind: (grafeas.v1beta1.source.AliasContext.Kind|keyof typeof grafeas.v1beta1.source.AliasContext.Kind);
+
+ /** AliasContext name. */
+ public name: string;
+
+ /**
+ * Creates a new AliasContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AliasContext instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.IAliasContext): grafeas.v1beta1.source.AliasContext;
+
+ /**
+ * Encodes the specified AliasContext message. Does not implicitly {@link grafeas.v1beta1.source.AliasContext.verify|verify} messages.
+ * @param message AliasContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.IAliasContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AliasContext message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.AliasContext.verify|verify} messages.
+ * @param message AliasContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.IAliasContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AliasContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AliasContext
+ * @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): grafeas.v1beta1.source.AliasContext;
+
+ /**
+ * Decodes an AliasContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AliasContext
+ * @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)): grafeas.v1beta1.source.AliasContext;
+
+ /**
+ * Verifies an AliasContext 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 AliasContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AliasContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.AliasContext;
+
+ /**
+ * Creates a plain object from an AliasContext message. Also converts values to other types if specified.
+ * @param message AliasContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.AliasContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AliasContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AliasContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AliasContext {
+
+ /** Kind enum. */
+ enum Kind {
+ KIND_UNSPECIFIED = 0,
+ FIXED = 1,
+ MOVABLE = 2,
+ OTHER = 4
+ }
+ }
+
+ /** Properties of a CloudRepoSourceContext. */
+ interface ICloudRepoSourceContext {
+
+ /** CloudRepoSourceContext repoId */
+ repoId?: (grafeas.v1beta1.source.IRepoId|null);
+
+ /** CloudRepoSourceContext revisionId */
+ revisionId?: (string|null);
+
+ /** CloudRepoSourceContext aliasContext */
+ aliasContext?: (grafeas.v1beta1.source.IAliasContext|null);
+ }
+
+ /** Represents a CloudRepoSourceContext. */
+ class CloudRepoSourceContext implements ICloudRepoSourceContext {
+
+ /**
+ * Constructs a new CloudRepoSourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.ICloudRepoSourceContext);
+
+ /** CloudRepoSourceContext repoId. */
+ public repoId?: (grafeas.v1beta1.source.IRepoId|null);
+
+ /** CloudRepoSourceContext revisionId. */
+ public revisionId?: (string|null);
+
+ /** CloudRepoSourceContext aliasContext. */
+ public aliasContext?: (grafeas.v1beta1.source.IAliasContext|null);
+
+ /** CloudRepoSourceContext revision. */
+ public revision?: ("revisionId"|"aliasContext");
+
+ /**
+ * Creates a new CloudRepoSourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CloudRepoSourceContext instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.ICloudRepoSourceContext): grafeas.v1beta1.source.CloudRepoSourceContext;
+
+ /**
+ * Encodes the specified CloudRepoSourceContext message. Does not implicitly {@link grafeas.v1beta1.source.CloudRepoSourceContext.verify|verify} messages.
+ * @param message CloudRepoSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.ICloudRepoSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CloudRepoSourceContext message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.CloudRepoSourceContext.verify|verify} messages.
+ * @param message CloudRepoSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.ICloudRepoSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CloudRepoSourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CloudRepoSourceContext
+ * @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): grafeas.v1beta1.source.CloudRepoSourceContext;
+
+ /**
+ * Decodes a CloudRepoSourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CloudRepoSourceContext
+ * @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)): grafeas.v1beta1.source.CloudRepoSourceContext;
+
+ /**
+ * Verifies a CloudRepoSourceContext 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 CloudRepoSourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CloudRepoSourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.CloudRepoSourceContext;
+
+ /**
+ * Creates a plain object from a CloudRepoSourceContext message. Also converts values to other types if specified.
+ * @param message CloudRepoSourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.CloudRepoSourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CloudRepoSourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CloudRepoSourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GerritSourceContext. */
+ interface IGerritSourceContext {
+
+ /** GerritSourceContext hostUri */
+ hostUri?: (string|null);
+
+ /** GerritSourceContext gerritProject */
+ gerritProject?: (string|null);
+
+ /** GerritSourceContext revisionId */
+ revisionId?: (string|null);
+
+ /** GerritSourceContext aliasContext */
+ aliasContext?: (grafeas.v1beta1.source.IAliasContext|null);
+ }
+
+ /** Represents a GerritSourceContext. */
+ class GerritSourceContext implements IGerritSourceContext {
+
+ /**
+ * Constructs a new GerritSourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.IGerritSourceContext);
+
+ /** GerritSourceContext hostUri. */
+ public hostUri: string;
+
+ /** GerritSourceContext gerritProject. */
+ public gerritProject: string;
+
+ /** GerritSourceContext revisionId. */
+ public revisionId?: (string|null);
+
+ /** GerritSourceContext aliasContext. */
+ public aliasContext?: (grafeas.v1beta1.source.IAliasContext|null);
+
+ /** GerritSourceContext revision. */
+ public revision?: ("revisionId"|"aliasContext");
+
+ /**
+ * Creates a new GerritSourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GerritSourceContext instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.IGerritSourceContext): grafeas.v1beta1.source.GerritSourceContext;
+
+ /**
+ * Encodes the specified GerritSourceContext message. Does not implicitly {@link grafeas.v1beta1.source.GerritSourceContext.verify|verify} messages.
+ * @param message GerritSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.IGerritSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GerritSourceContext message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.GerritSourceContext.verify|verify} messages.
+ * @param message GerritSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.IGerritSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GerritSourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GerritSourceContext
+ * @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): grafeas.v1beta1.source.GerritSourceContext;
+
+ /**
+ * Decodes a GerritSourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GerritSourceContext
+ * @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)): grafeas.v1beta1.source.GerritSourceContext;
+
+ /**
+ * Verifies a GerritSourceContext 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 GerritSourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GerritSourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.GerritSourceContext;
+
+ /**
+ * Creates a plain object from a GerritSourceContext message. Also converts values to other types if specified.
+ * @param message GerritSourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.GerritSourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GerritSourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GerritSourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GitSourceContext. */
+ interface IGitSourceContext {
+
+ /** GitSourceContext url */
+ url?: (string|null);
+
+ /** GitSourceContext revisionId */
+ revisionId?: (string|null);
+ }
+
+ /** Represents a GitSourceContext. */
+ class GitSourceContext implements IGitSourceContext {
+
+ /**
+ * Constructs a new GitSourceContext.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.IGitSourceContext);
+
+ /** GitSourceContext url. */
+ public url: string;
+
+ /** GitSourceContext revisionId. */
+ public revisionId: string;
+
+ /**
+ * Creates a new GitSourceContext instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GitSourceContext instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.IGitSourceContext): grafeas.v1beta1.source.GitSourceContext;
+
+ /**
+ * Encodes the specified GitSourceContext message. Does not implicitly {@link grafeas.v1beta1.source.GitSourceContext.verify|verify} messages.
+ * @param message GitSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.IGitSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GitSourceContext message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.GitSourceContext.verify|verify} messages.
+ * @param message GitSourceContext message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.IGitSourceContext, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GitSourceContext message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GitSourceContext
+ * @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): grafeas.v1beta1.source.GitSourceContext;
+
+ /**
+ * Decodes a GitSourceContext message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GitSourceContext
+ * @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)): grafeas.v1beta1.source.GitSourceContext;
+
+ /**
+ * Verifies a GitSourceContext 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 GitSourceContext message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GitSourceContext
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.GitSourceContext;
+
+ /**
+ * Creates a plain object from a GitSourceContext message. Also converts values to other types if specified.
+ * @param message GitSourceContext
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.GitSourceContext, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GitSourceContext to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GitSourceContext
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RepoId. */
+ interface IRepoId {
+
+ /** RepoId projectRepoId */
+ projectRepoId?: (grafeas.v1beta1.source.IProjectRepoId|null);
+
+ /** RepoId uid */
+ uid?: (string|null);
+ }
+
+ /** Represents a RepoId. */
+ class RepoId implements IRepoId {
+
+ /**
+ * Constructs a new RepoId.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.IRepoId);
+
+ /** RepoId projectRepoId. */
+ public projectRepoId?: (grafeas.v1beta1.source.IProjectRepoId|null);
+
+ /** RepoId uid. */
+ public uid?: (string|null);
+
+ /** RepoId id. */
+ public id?: ("projectRepoId"|"uid");
+
+ /**
+ * Creates a new RepoId instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RepoId instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.IRepoId): grafeas.v1beta1.source.RepoId;
+
+ /**
+ * Encodes the specified RepoId message. Does not implicitly {@link grafeas.v1beta1.source.RepoId.verify|verify} messages.
+ * @param message RepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.IRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RepoId message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.RepoId.verify|verify} messages.
+ * @param message RepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.IRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RepoId message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RepoId
+ * @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): grafeas.v1beta1.source.RepoId;
+
+ /**
+ * Decodes a RepoId message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RepoId
+ * @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)): grafeas.v1beta1.source.RepoId;
+
+ /**
+ * Verifies a RepoId 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 RepoId message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RepoId
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.RepoId;
+
+ /**
+ * Creates a plain object from a RepoId message. Also converts values to other types if specified.
+ * @param message RepoId
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.RepoId, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RepoId to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RepoId
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ProjectRepoId. */
+ interface IProjectRepoId {
+
+ /** ProjectRepoId projectId */
+ projectId?: (string|null);
+
+ /** ProjectRepoId repoName */
+ repoName?: (string|null);
+ }
+
+ /** Represents a ProjectRepoId. */
+ class ProjectRepoId implements IProjectRepoId {
+
+ /**
+ * Constructs a new ProjectRepoId.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.source.IProjectRepoId);
+
+ /** ProjectRepoId projectId. */
+ public projectId: string;
+
+ /** ProjectRepoId repoName. */
+ public repoName: string;
+
+ /**
+ * Creates a new ProjectRepoId instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProjectRepoId instance
+ */
+ public static create(properties?: grafeas.v1beta1.source.IProjectRepoId): grafeas.v1beta1.source.ProjectRepoId;
+
+ /**
+ * Encodes the specified ProjectRepoId message. Does not implicitly {@link grafeas.v1beta1.source.ProjectRepoId.verify|verify} messages.
+ * @param message ProjectRepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.source.IProjectRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProjectRepoId message, length delimited. Does not implicitly {@link grafeas.v1beta1.source.ProjectRepoId.verify|verify} messages.
+ * @param message ProjectRepoId message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.source.IProjectRepoId, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProjectRepoId message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProjectRepoId
+ * @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): grafeas.v1beta1.source.ProjectRepoId;
+
+ /**
+ * Decodes a ProjectRepoId message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProjectRepoId
+ * @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)): grafeas.v1beta1.source.ProjectRepoId;
+
+ /**
+ * Verifies a ProjectRepoId 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 ProjectRepoId message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProjectRepoId
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.source.ProjectRepoId;
+
+ /**
+ * Creates a plain object from a ProjectRepoId message. Also converts values to other types if specified.
+ * @param message ProjectRepoId
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.source.ProjectRepoId, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProjectRepoId to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProjectRepoId
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace vulnerability. */
+ namespace vulnerability {
+
+ /** Properties of a CVSSv3. */
+ interface ICVSSv3 {
+
+ /** CVSSv3 baseScore */
+ baseScore?: (number|null);
+
+ /** CVSSv3 exploitabilityScore */
+ exploitabilityScore?: (number|null);
+
+ /** CVSSv3 impactScore */
+ impactScore?: (number|null);
+
+ /** CVSSv3 attackVector */
+ attackVector?: (grafeas.v1beta1.vulnerability.CVSSv3.AttackVector|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.AttackVector|null);
+
+ /** CVSSv3 attackComplexity */
+ attackComplexity?: (grafeas.v1beta1.vulnerability.CVSSv3.AttackComplexity|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.AttackComplexity|null);
+
+ /** CVSSv3 privilegesRequired */
+ privilegesRequired?: (grafeas.v1beta1.vulnerability.CVSSv3.PrivilegesRequired|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.PrivilegesRequired|null);
+
+ /** CVSSv3 userInteraction */
+ userInteraction?: (grafeas.v1beta1.vulnerability.CVSSv3.UserInteraction|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.UserInteraction|null);
+
+ /** CVSSv3 scope */
+ scope?: (grafeas.v1beta1.vulnerability.CVSSv3.Scope|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Scope|null);
+
+ /** CVSSv3 confidentialityImpact */
+ confidentialityImpact?: (grafeas.v1beta1.vulnerability.CVSSv3.Impact|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Impact|null);
+
+ /** CVSSv3 integrityImpact */
+ integrityImpact?: (grafeas.v1beta1.vulnerability.CVSSv3.Impact|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Impact|null);
+
+ /** CVSSv3 availabilityImpact */
+ availabilityImpact?: (grafeas.v1beta1.vulnerability.CVSSv3.Impact|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Impact|null);
+ }
+
+ /** Represents a CVSSv3. */
+ class CVSSv3 implements ICVSSv3 {
+
+ /**
+ * Constructs a new CVSSv3.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.ICVSSv3);
+
+ /** CVSSv3 baseScore. */
+ public baseScore: number;
+
+ /** CVSSv3 exploitabilityScore. */
+ public exploitabilityScore: number;
+
+ /** CVSSv3 impactScore. */
+ public impactScore: number;
+
+ /** CVSSv3 attackVector. */
+ public attackVector: (grafeas.v1beta1.vulnerability.CVSSv3.AttackVector|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.AttackVector);
+
+ /** CVSSv3 attackComplexity. */
+ public attackComplexity: (grafeas.v1beta1.vulnerability.CVSSv3.AttackComplexity|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.AttackComplexity);
+
+ /** CVSSv3 privilegesRequired. */
+ public privilegesRequired: (grafeas.v1beta1.vulnerability.CVSSv3.PrivilegesRequired|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.PrivilegesRequired);
+
+ /** CVSSv3 userInteraction. */
+ public userInteraction: (grafeas.v1beta1.vulnerability.CVSSv3.UserInteraction|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.UserInteraction);
+
+ /** CVSSv3 scope. */
+ public scope: (grafeas.v1beta1.vulnerability.CVSSv3.Scope|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Scope);
+
+ /** CVSSv3 confidentialityImpact. */
+ public confidentialityImpact: (grafeas.v1beta1.vulnerability.CVSSv3.Impact|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Impact);
+
+ /** CVSSv3 integrityImpact. */
+ public integrityImpact: (grafeas.v1beta1.vulnerability.CVSSv3.Impact|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Impact);
+
+ /** CVSSv3 availabilityImpact. */
+ public availabilityImpact: (grafeas.v1beta1.vulnerability.CVSSv3.Impact|keyof typeof grafeas.v1beta1.vulnerability.CVSSv3.Impact);
+
+ /**
+ * Creates a new CVSSv3 instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CVSSv3 instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.ICVSSv3): grafeas.v1beta1.vulnerability.CVSSv3;
+
+ /**
+ * Encodes the specified CVSSv3 message. Does not implicitly {@link grafeas.v1beta1.vulnerability.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: grafeas.v1beta1.vulnerability.ICVSSv3, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CVSSv3 message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.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: grafeas.v1beta1.vulnerability.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): grafeas.v1beta1.vulnerability.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)): grafeas.v1beta1.vulnerability.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 }): grafeas.v1beta1.vulnerability.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: grafeas.v1beta1.vulnerability.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
+ }
+ }
+
+ /** Severity enum. */
+ enum Severity {
+ SEVERITY_UNSPECIFIED = 0,
+ MINIMAL = 1,
+ LOW = 2,
+ MEDIUM = 3,
+ HIGH = 4,
+ CRITICAL = 5
+ }
+
+ /** Properties of a Vulnerability. */
+ interface IVulnerability {
+
+ /** Vulnerability cvssScore */
+ cvssScore?: (number|null);
+
+ /** Vulnerability severity */
+ severity?: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity|null);
+
+ /** Vulnerability details */
+ details?: (grafeas.v1beta1.vulnerability.Vulnerability.IDetail[]|null);
+
+ /** Vulnerability cvssV3 */
+ cvssV3?: (grafeas.v1beta1.vulnerability.ICVSSv3|null);
+
+ /** Vulnerability windowsDetails */
+ windowsDetails?: (grafeas.v1beta1.vulnerability.Vulnerability.IWindowsDetail[]|null);
+
+ /** Vulnerability sourceUpdateTime */
+ sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a Vulnerability. */
+ class Vulnerability implements IVulnerability {
+
+ /**
+ * Constructs a new Vulnerability.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.IVulnerability);
+
+ /** Vulnerability cvssScore. */
+ public cvssScore: number;
+
+ /** Vulnerability severity. */
+ public severity: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity);
+
+ /** Vulnerability details. */
+ public details: grafeas.v1beta1.vulnerability.Vulnerability.IDetail[];
+
+ /** Vulnerability cvssV3. */
+ public cvssV3?: (grafeas.v1beta1.vulnerability.ICVSSv3|null);
+
+ /** Vulnerability windowsDetails. */
+ public windowsDetails: grafeas.v1beta1.vulnerability.Vulnerability.IWindowsDetail[];
+
+ /** Vulnerability sourceUpdateTime. */
+ public sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new Vulnerability instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vulnerability instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.IVulnerability): grafeas.v1beta1.vulnerability.Vulnerability;
+
+ /**
+ * Encodes the specified Vulnerability message. Does not implicitly {@link grafeas.v1beta1.vulnerability.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: grafeas.v1beta1.vulnerability.IVulnerability, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vulnerability message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.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: grafeas.v1beta1.vulnerability.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): grafeas.v1beta1.vulnerability.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)): grafeas.v1beta1.vulnerability.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 }): grafeas.v1beta1.vulnerability.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: grafeas.v1beta1.vulnerability.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;
+ }
+
+ namespace Vulnerability {
+
+ /** Properties of a Detail. */
+ interface IDetail {
+
+ /** Detail cpeUri */
+ cpeUri?: (string|null);
+
+ /** Detail package */
+ "package"?: (string|null);
+
+ /** Detail minAffectedVersion */
+ minAffectedVersion?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Detail maxAffectedVersion */
+ maxAffectedVersion?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Detail severityName */
+ severityName?: (string|null);
+
+ /** Detail description */
+ description?: (string|null);
+
+ /** Detail fixedLocation */
+ fixedLocation?: (grafeas.v1beta1.vulnerability.IVulnerabilityLocation|null);
+
+ /** Detail packageType */
+ packageType?: (string|null);
+
+ /** Detail isObsolete */
+ isObsolete?: (boolean|null);
+
+ /** Detail sourceUpdateTime */
+ sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a Detail. */
+ class Detail implements IDetail {
+
+ /**
+ * Constructs a new Detail.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.Vulnerability.IDetail);
+
+ /** Detail cpeUri. */
+ public cpeUri: string;
+
+ /** Detail package. */
+ public package: string;
+
+ /** Detail minAffectedVersion. */
+ public minAffectedVersion?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Detail maxAffectedVersion. */
+ public maxAffectedVersion?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Detail severityName. */
+ public severityName: string;
+
+ /** Detail description. */
+ public description: string;
+
+ /** Detail fixedLocation. */
+ public fixedLocation?: (grafeas.v1beta1.vulnerability.IVulnerabilityLocation|null);
+
+ /** Detail packageType. */
+ public packageType: string;
+
+ /** Detail isObsolete. */
+ public isObsolete: boolean;
+
+ /** Detail sourceUpdateTime. */
+ public sourceUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new Detail instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Detail instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.Vulnerability.IDetail): grafeas.v1beta1.vulnerability.Vulnerability.Detail;
+
+ /**
+ * Encodes the specified Detail message. Does not implicitly {@link grafeas.v1beta1.vulnerability.Vulnerability.Detail.verify|verify} messages.
+ * @param message Detail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.vulnerability.Vulnerability.IDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Detail message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.Vulnerability.Detail.verify|verify} messages.
+ * @param message Detail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.vulnerability.Vulnerability.IDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Detail message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Detail
+ * @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): grafeas.v1beta1.vulnerability.Vulnerability.Detail;
+
+ /**
+ * Decodes a Detail message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Detail
+ * @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)): grafeas.v1beta1.vulnerability.Vulnerability.Detail;
+
+ /**
+ * Verifies a Detail 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 Detail message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Detail
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.vulnerability.Vulnerability.Detail;
+
+ /**
+ * Creates a plain object from a Detail message. Also converts values to other types if specified.
+ * @param message Detail
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.vulnerability.Vulnerability.Detail, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Detail to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Detail
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WindowsDetail. */
+ interface IWindowsDetail {
+
+ /** WindowsDetail cpeUri */
+ cpeUri?: (string|null);
+
+ /** WindowsDetail name */
+ name?: (string|null);
+
+ /** WindowsDetail description */
+ description?: (string|null);
+
+ /** WindowsDetail fixingKbs */
+ fixingKbs?: (grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.IKnowledgeBase[]|null);
+ }
+
+ /** Represents a WindowsDetail. */
+ class WindowsDetail implements IWindowsDetail {
+
+ /**
+ * Constructs a new WindowsDetail.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.Vulnerability.IWindowsDetail);
+
+ /** WindowsDetail cpeUri. */
+ public cpeUri: string;
+
+ /** WindowsDetail name. */
+ public name: string;
+
+ /** WindowsDetail description. */
+ public description: string;
+
+ /** WindowsDetail fixingKbs. */
+ public fixingKbs: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.IKnowledgeBase[];
+
+ /**
+ * Creates a new WindowsDetail instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WindowsDetail instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.Vulnerability.IWindowsDetail): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail;
+
+ /**
+ * Encodes the specified WindowsDetail message. Does not implicitly {@link grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.verify|verify} messages.
+ * @param message WindowsDetail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.vulnerability.Vulnerability.IWindowsDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WindowsDetail message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.verify|verify} messages.
+ * @param message WindowsDetail message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.vulnerability.Vulnerability.IWindowsDetail, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WindowsDetail message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WindowsDetail
+ * @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): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail;
+
+ /**
+ * Decodes a WindowsDetail message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WindowsDetail
+ * @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)): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail;
+
+ /**
+ * Verifies a WindowsDetail 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 WindowsDetail message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WindowsDetail
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail;
+
+ /**
+ * Creates a plain object from a WindowsDetail message. Also converts values to other types if specified.
+ * @param message WindowsDetail
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WindowsDetail to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WindowsDetail
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WindowsDetail {
+
+ /** Properties of a KnowledgeBase. */
+ interface IKnowledgeBase {
+
+ /** KnowledgeBase name */
+ name?: (string|null);
+
+ /** KnowledgeBase url */
+ url?: (string|null);
+ }
+
+ /** Represents a KnowledgeBase. */
+ class KnowledgeBase implements IKnowledgeBase {
+
+ /**
+ * Constructs a new KnowledgeBase.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.IKnowledgeBase);
+
+ /** KnowledgeBase name. */
+ public name: string;
+
+ /** KnowledgeBase url. */
+ public url: string;
+
+ /**
+ * Creates a new KnowledgeBase instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns KnowledgeBase instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.IKnowledgeBase): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Encodes the specified KnowledgeBase message. Does not implicitly {@link grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase.verify|verify} messages.
+ * @param message KnowledgeBase message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.IKnowledgeBase, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified KnowledgeBase message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase.verify|verify} messages.
+ * @param message KnowledgeBase message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.IKnowledgeBase, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a KnowledgeBase message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns KnowledgeBase
+ * @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): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Decodes a KnowledgeBase message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns KnowledgeBase
+ * @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)): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Verifies a KnowledgeBase 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 KnowledgeBase message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns KnowledgeBase
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase;
+
+ /**
+ * Creates a plain object from a KnowledgeBase message. Also converts values to other types if specified.
+ * @param message KnowledgeBase
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.vulnerability.Vulnerability.WindowsDetail.KnowledgeBase, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this KnowledgeBase to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for KnowledgeBase
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details type */
+ type?: (string|null);
+
+ /** Details severity */
+ severity?: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity|null);
+
+ /** Details cvssScore */
+ cvssScore?: (number|null);
+
+ /** Details packageIssue */
+ packageIssue?: (grafeas.v1beta1.vulnerability.IPackageIssue[]|null);
+
+ /** Details shortDescription */
+ shortDescription?: (string|null);
+
+ /** Details longDescription */
+ longDescription?: (string|null);
+
+ /** Details relatedUrls */
+ relatedUrls?: (grafeas.v1beta1.IRelatedUrl[]|null);
+
+ /** Details effectiveSeverity */
+ effectiveSeverity?: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.IDetails);
+
+ /** Details type. */
+ public type: string;
+
+ /** Details severity. */
+ public severity: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity);
+
+ /** Details cvssScore. */
+ public cvssScore: number;
+
+ /** Details packageIssue. */
+ public packageIssue: grafeas.v1beta1.vulnerability.IPackageIssue[];
+
+ /** Details shortDescription. */
+ public shortDescription: string;
+
+ /** Details longDescription. */
+ public longDescription: string;
+
+ /** Details relatedUrls. */
+ public relatedUrls: grafeas.v1beta1.IRelatedUrl[];
+
+ /** Details effectiveSeverity. */
+ public effectiveSeverity: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity);
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.IDetails): grafeas.v1beta1.vulnerability.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.vulnerability.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.vulnerability.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.vulnerability.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.vulnerability.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.vulnerability.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.vulnerability.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.vulnerability.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a PackageIssue. */
+ interface IPackageIssue {
+
+ /** PackageIssue affectedLocation */
+ affectedLocation?: (grafeas.v1beta1.vulnerability.IVulnerabilityLocation|null);
+
+ /** PackageIssue fixedLocation */
+ fixedLocation?: (grafeas.v1beta1.vulnerability.IVulnerabilityLocation|null);
+
+ /** PackageIssue severityName */
+ severityName?: (string|null);
+ }
+
+ /** Represents a PackageIssue. */
+ class PackageIssue implements IPackageIssue {
+
+ /**
+ * Constructs a new PackageIssue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.IPackageIssue);
+
+ /** PackageIssue affectedLocation. */
+ public affectedLocation?: (grafeas.v1beta1.vulnerability.IVulnerabilityLocation|null);
+
+ /** PackageIssue fixedLocation. */
+ public fixedLocation?: (grafeas.v1beta1.vulnerability.IVulnerabilityLocation|null);
+
+ /** PackageIssue severityName. */
+ public severityName: string;
+
+ /**
+ * Creates a new PackageIssue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PackageIssue instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.IPackageIssue): grafeas.v1beta1.vulnerability.PackageIssue;
+
+ /**
+ * Encodes the specified PackageIssue message. Does not implicitly {@link grafeas.v1beta1.vulnerability.PackageIssue.verify|verify} messages.
+ * @param message PackageIssue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.vulnerability.IPackageIssue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PackageIssue message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.PackageIssue.verify|verify} messages.
+ * @param message PackageIssue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.vulnerability.IPackageIssue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PackageIssue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PackageIssue
+ * @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): grafeas.v1beta1.vulnerability.PackageIssue;
+
+ /**
+ * Decodes a PackageIssue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PackageIssue
+ * @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)): grafeas.v1beta1.vulnerability.PackageIssue;
+
+ /**
+ * Verifies a PackageIssue 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 PackageIssue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PackageIssue
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.vulnerability.PackageIssue;
+
+ /**
+ * Creates a plain object from a PackageIssue message. Also converts values to other types if specified.
+ * @param message PackageIssue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.vulnerability.PackageIssue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PackageIssue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PackageIssue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a VulnerabilityLocation. */
+ interface IVulnerabilityLocation {
+
+ /** VulnerabilityLocation cpeUri */
+ cpeUri?: (string|null);
+
+ /** VulnerabilityLocation package */
+ "package"?: (string|null);
+
+ /** VulnerabilityLocation version */
+ version?: (grafeas.v1beta1.package_.IVersion|null);
+ }
+
+ /** Represents a VulnerabilityLocation. */
+ class VulnerabilityLocation implements IVulnerabilityLocation {
+
+ /**
+ * Constructs a new VulnerabilityLocation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.vulnerability.IVulnerabilityLocation);
+
+ /** VulnerabilityLocation cpeUri. */
+ public cpeUri: string;
+
+ /** VulnerabilityLocation package. */
+ public package: string;
+
+ /** VulnerabilityLocation version. */
+ public version?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /**
+ * Creates a new VulnerabilityLocation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VulnerabilityLocation instance
+ */
+ public static create(properties?: grafeas.v1beta1.vulnerability.IVulnerabilityLocation): grafeas.v1beta1.vulnerability.VulnerabilityLocation;
+
+ /**
+ * Encodes the specified VulnerabilityLocation message. Does not implicitly {@link grafeas.v1beta1.vulnerability.VulnerabilityLocation.verify|verify} messages.
+ * @param message VulnerabilityLocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.vulnerability.IVulnerabilityLocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VulnerabilityLocation message, length delimited. Does not implicitly {@link grafeas.v1beta1.vulnerability.VulnerabilityLocation.verify|verify} messages.
+ * @param message VulnerabilityLocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.vulnerability.IVulnerabilityLocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VulnerabilityLocation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VulnerabilityLocation
+ * @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): grafeas.v1beta1.vulnerability.VulnerabilityLocation;
+
+ /**
+ * Decodes a VulnerabilityLocation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VulnerabilityLocation
+ * @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)): grafeas.v1beta1.vulnerability.VulnerabilityLocation;
+
+ /**
+ * Verifies a VulnerabilityLocation 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 VulnerabilityLocation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VulnerabilityLocation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.vulnerability.VulnerabilityLocation;
+
+ /**
+ * Creates a plain object from a VulnerabilityLocation message. Also converts values to other types if specified.
+ * @param message VulnerabilityLocation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.vulnerability.VulnerabilityLocation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VulnerabilityLocation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VulnerabilityLocation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace deployment. */
+ namespace deployment {
+
+ /** Properties of a Deployable. */
+ interface IDeployable {
+
+ /** Deployable resourceUri */
+ resourceUri?: (string[]|null);
+ }
+
+ /** Represents a Deployable. */
+ class Deployable implements IDeployable {
+
+ /**
+ * Constructs a new Deployable.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.deployment.IDeployable);
+
+ /** Deployable resourceUri. */
+ public resourceUri: string[];
+
+ /**
+ * Creates a new Deployable instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Deployable instance
+ */
+ public static create(properties?: grafeas.v1beta1.deployment.IDeployable): grafeas.v1beta1.deployment.Deployable;
+
+ /**
+ * Encodes the specified Deployable message. Does not implicitly {@link grafeas.v1beta1.deployment.Deployable.verify|verify} messages.
+ * @param message Deployable message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.deployment.IDeployable, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Deployable message, length delimited. Does not implicitly {@link grafeas.v1beta1.deployment.Deployable.verify|verify} messages.
+ * @param message Deployable message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.deployment.IDeployable, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Deployable message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Deployable
+ * @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): grafeas.v1beta1.deployment.Deployable;
+
+ /**
+ * Decodes a Deployable message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Deployable
+ * @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)): grafeas.v1beta1.deployment.Deployable;
+
+ /**
+ * Verifies a Deployable 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 Deployable message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Deployable
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.deployment.Deployable;
+
+ /**
+ * Creates a plain object from a Deployable message. Also converts values to other types if specified.
+ * @param message Deployable
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.deployment.Deployable, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Deployable to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Deployable
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details deployment */
+ deployment?: (grafeas.v1beta1.deployment.IDeployment|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.deployment.IDetails);
+
+ /** Details deployment. */
+ public deployment?: (grafeas.v1beta1.deployment.IDeployment|null);
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.deployment.IDetails): grafeas.v1beta1.deployment.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.deployment.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.deployment.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.deployment.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.deployment.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.deployment.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.deployment.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.deployment.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.deployment.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Deployment. */
+ interface IDeployment {
+
+ /** Deployment userEmail */
+ userEmail?: (string|null);
+
+ /** Deployment deployTime */
+ deployTime?: (google.protobuf.ITimestamp|null);
+
+ /** Deployment undeployTime */
+ undeployTime?: (google.protobuf.ITimestamp|null);
+
+ /** Deployment config */
+ config?: (string|null);
+
+ /** Deployment address */
+ address?: (string|null);
+
+ /** Deployment resourceUri */
+ resourceUri?: (string[]|null);
+
+ /** Deployment platform */
+ platform?: (grafeas.v1beta1.deployment.Deployment.Platform|keyof typeof grafeas.v1beta1.deployment.Deployment.Platform|null);
+ }
+
+ /** Represents a Deployment. */
+ class Deployment implements IDeployment {
+
+ /**
+ * Constructs a new Deployment.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.deployment.IDeployment);
+
+ /** Deployment userEmail. */
+ public userEmail: string;
+
+ /** Deployment deployTime. */
+ public deployTime?: (google.protobuf.ITimestamp|null);
+
+ /** Deployment undeployTime. */
+ public undeployTime?: (google.protobuf.ITimestamp|null);
+
+ /** Deployment config. */
+ public config: string;
+
+ /** Deployment address. */
+ public address: string;
+
+ /** Deployment resourceUri. */
+ public resourceUri: string[];
+
+ /** Deployment platform. */
+ public platform: (grafeas.v1beta1.deployment.Deployment.Platform|keyof typeof grafeas.v1beta1.deployment.Deployment.Platform);
+
+ /**
+ * Creates a new Deployment instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Deployment instance
+ */
+ public static create(properties?: grafeas.v1beta1.deployment.IDeployment): grafeas.v1beta1.deployment.Deployment;
+
+ /**
+ * Encodes the specified Deployment message. Does not implicitly {@link grafeas.v1beta1.deployment.Deployment.verify|verify} messages.
+ * @param message Deployment message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.deployment.IDeployment, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Deployment message, length delimited. Does not implicitly {@link grafeas.v1beta1.deployment.Deployment.verify|verify} messages.
+ * @param message Deployment message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.deployment.IDeployment, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Deployment message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Deployment
+ * @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): grafeas.v1beta1.deployment.Deployment;
+
+ /**
+ * Decodes a Deployment message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Deployment
+ * @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)): grafeas.v1beta1.deployment.Deployment;
+
+ /**
+ * Verifies a Deployment 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 Deployment message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Deployment
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.deployment.Deployment;
+
+ /**
+ * Creates a plain object from a Deployment message. Also converts values to other types if specified.
+ * @param message Deployment
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.deployment.Deployment, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Deployment to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Deployment
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Deployment {
+
+ /** Platform enum. */
+ enum Platform {
+ PLATFORM_UNSPECIFIED = 0,
+ GKE = 1,
+ FLEX = 2,
+ CUSTOM = 3
+ }
+ }
+ }
+
+ /** Namespace discovery. */
+ namespace discovery {
+
+ /** Properties of a Discovery. */
+ interface IDiscovery {
+
+ /** Discovery analysisKind */
+ analysisKind?: (grafeas.v1beta1.NoteKind|keyof typeof grafeas.v1beta1.NoteKind|null);
+ }
+
+ /** Represents a Discovery. */
+ class Discovery implements IDiscovery {
+
+ /**
+ * Constructs a new Discovery.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.discovery.IDiscovery);
+
+ /** Discovery analysisKind. */
+ public analysisKind: (grafeas.v1beta1.NoteKind|keyof typeof grafeas.v1beta1.NoteKind);
+
+ /**
+ * Creates a new Discovery instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Discovery instance
+ */
+ public static create(properties?: grafeas.v1beta1.discovery.IDiscovery): grafeas.v1beta1.discovery.Discovery;
+
+ /**
+ * Encodes the specified Discovery message. Does not implicitly {@link grafeas.v1beta1.discovery.Discovery.verify|verify} messages.
+ * @param message Discovery message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.discovery.IDiscovery, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Discovery message, length delimited. Does not implicitly {@link grafeas.v1beta1.discovery.Discovery.verify|verify} messages.
+ * @param message Discovery message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.discovery.IDiscovery, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Discovery message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Discovery
+ * @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): grafeas.v1beta1.discovery.Discovery;
+
+ /**
+ * Decodes a Discovery message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Discovery
+ * @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)): grafeas.v1beta1.discovery.Discovery;
+
+ /**
+ * Verifies a Discovery 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 Discovery message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Discovery
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.discovery.Discovery;
+
+ /**
+ * Creates a plain object from a Discovery message. Also converts values to other types if specified.
+ * @param message Discovery
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.discovery.Discovery, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Discovery to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Discovery
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details discovered */
+ discovered?: (grafeas.v1beta1.discovery.IDiscovered|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.discovery.IDetails);
+
+ /** Details discovered. */
+ public discovered?: (grafeas.v1beta1.discovery.IDiscovered|null);
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.discovery.IDetails): grafeas.v1beta1.discovery.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.discovery.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.discovery.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.discovery.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.discovery.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.discovery.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.discovery.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.discovery.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.discovery.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Discovered. */
+ interface IDiscovered {
+
+ /** Discovered continuousAnalysis */
+ continuousAnalysis?: (grafeas.v1beta1.discovery.Discovered.ContinuousAnalysis|keyof typeof grafeas.v1beta1.discovery.Discovered.ContinuousAnalysis|null);
+
+ /** Discovered lastAnalysisTime */
+ lastAnalysisTime?: (google.protobuf.ITimestamp|null);
+
+ /** Discovered analysisStatus */
+ analysisStatus?: (grafeas.v1beta1.discovery.Discovered.AnalysisStatus|keyof typeof grafeas.v1beta1.discovery.Discovered.AnalysisStatus|null);
+
+ /** Discovered analysisStatusError */
+ analysisStatusError?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents a Discovered. */
+ class Discovered implements IDiscovered {
+
+ /**
+ * Constructs a new Discovered.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.discovery.IDiscovered);
+
+ /** Discovered continuousAnalysis. */
+ public continuousAnalysis: (grafeas.v1beta1.discovery.Discovered.ContinuousAnalysis|keyof typeof grafeas.v1beta1.discovery.Discovered.ContinuousAnalysis);
+
+ /** Discovered lastAnalysisTime. */
+ public lastAnalysisTime?: (google.protobuf.ITimestamp|null);
+
+ /** Discovered analysisStatus. */
+ public analysisStatus: (grafeas.v1beta1.discovery.Discovered.AnalysisStatus|keyof typeof grafeas.v1beta1.discovery.Discovered.AnalysisStatus);
+
+ /** Discovered analysisStatusError. */
+ public analysisStatusError?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new Discovered instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Discovered instance
+ */
+ public static create(properties?: grafeas.v1beta1.discovery.IDiscovered): grafeas.v1beta1.discovery.Discovered;
+
+ /**
+ * Encodes the specified Discovered message. Does not implicitly {@link grafeas.v1beta1.discovery.Discovered.verify|verify} messages.
+ * @param message Discovered message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.discovery.IDiscovered, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Discovered message, length delimited. Does not implicitly {@link grafeas.v1beta1.discovery.Discovered.verify|verify} messages.
+ * @param message Discovered message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.discovery.IDiscovered, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Discovered message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Discovered
+ * @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): grafeas.v1beta1.discovery.Discovered;
+
+ /**
+ * Decodes a Discovered message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Discovered
+ * @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)): grafeas.v1beta1.discovery.Discovered;
+
+ /**
+ * Verifies a Discovered 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 Discovered message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Discovered
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.discovery.Discovered;
+
+ /**
+ * Creates a plain object from a Discovered message. Also converts values to other types if specified.
+ * @param message Discovered
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.discovery.Discovered, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Discovered to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Discovered
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Discovered {
+
+ /** ContinuousAnalysis enum. */
+ enum ContinuousAnalysis {
+ CONTINUOUS_ANALYSIS_UNSPECIFIED = 0,
+ ACTIVE = 1,
+ INACTIVE = 2
+ }
+
+ /** AnalysisStatus enum. */
+ enum AnalysisStatus {
+ ANALYSIS_STATUS_UNSPECIFIED = 0,
+ PENDING = 1,
+ SCANNING = 2,
+ FINISHED_SUCCESS = 3,
+ FINISHED_FAILED = 4,
+ FINISHED_UNSUPPORTED = 5
+ }
+ }
+ }
+
+ /** Represents a GrafeasV1Beta1 */
+ class GrafeasV1Beta1 extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new GrafeasV1Beta1 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 GrafeasV1Beta1 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): GrafeasV1Beta1;
+
+ /**
+ * Calls GetOccurrence.
+ * @param request GetOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Occurrence
+ */
+ public getOccurrence(request: grafeas.v1beta1.IGetOccurrenceRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.GetOccurrenceCallback): void;
+
+ /**
+ * Calls GetOccurrence.
+ * @param request GetOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public getOccurrence(request: grafeas.v1beta1.IGetOccurrenceRequest): Promise;
+
+ /**
+ * Calls ListOccurrences.
+ * @param request ListOccurrencesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListOccurrencesResponse
+ */
+ public listOccurrences(request: grafeas.v1beta1.IListOccurrencesRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.ListOccurrencesCallback): void;
+
+ /**
+ * Calls ListOccurrences.
+ * @param request ListOccurrencesRequest message or plain object
+ * @returns Promise
+ */
+ public listOccurrences(request: grafeas.v1beta1.IListOccurrencesRequest): Promise;
+
+ /**
+ * Calls DeleteOccurrence.
+ * @param request DeleteOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteOccurrence(request: grafeas.v1beta1.IDeleteOccurrenceRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.DeleteOccurrenceCallback): void;
+
+ /**
+ * Calls DeleteOccurrence.
+ * @param request DeleteOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public deleteOccurrence(request: grafeas.v1beta1.IDeleteOccurrenceRequest): Promise;
+
+ /**
+ * Calls CreateOccurrence.
+ * @param request CreateOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Occurrence
+ */
+ public createOccurrence(request: grafeas.v1beta1.ICreateOccurrenceRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.CreateOccurrenceCallback): void;
+
+ /**
+ * Calls CreateOccurrence.
+ * @param request CreateOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public createOccurrence(request: grafeas.v1beta1.ICreateOccurrenceRequest): Promise;
+
+ /**
+ * Calls BatchCreateOccurrences.
+ * @param request BatchCreateOccurrencesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchCreateOccurrencesResponse
+ */
+ public batchCreateOccurrences(request: grafeas.v1beta1.IBatchCreateOccurrencesRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.BatchCreateOccurrencesCallback): void;
+
+ /**
+ * Calls BatchCreateOccurrences.
+ * @param request BatchCreateOccurrencesRequest message or plain object
+ * @returns Promise
+ */
+ public batchCreateOccurrences(request: grafeas.v1beta1.IBatchCreateOccurrencesRequest): Promise;
+
+ /**
+ * Calls UpdateOccurrence.
+ * @param request UpdateOccurrenceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Occurrence
+ */
+ public updateOccurrence(request: grafeas.v1beta1.IUpdateOccurrenceRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.UpdateOccurrenceCallback): void;
+
+ /**
+ * Calls UpdateOccurrence.
+ * @param request UpdateOccurrenceRequest message or plain object
+ * @returns Promise
+ */
+ public updateOccurrence(request: grafeas.v1beta1.IUpdateOccurrenceRequest): Promise;
+
+ /**
+ * Calls GetOccurrenceNote.
+ * @param request GetOccurrenceNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public getOccurrenceNote(request: grafeas.v1beta1.IGetOccurrenceNoteRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.GetOccurrenceNoteCallback): void;
+
+ /**
+ * Calls GetOccurrenceNote.
+ * @param request GetOccurrenceNoteRequest message or plain object
+ * @returns Promise
+ */
+ public getOccurrenceNote(request: grafeas.v1beta1.IGetOccurrenceNoteRequest): Promise;
+
+ /**
+ * Calls GetNote.
+ * @param request GetNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public getNote(request: grafeas.v1beta1.IGetNoteRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.GetNoteCallback): void;
+
+ /**
+ * Calls GetNote.
+ * @param request GetNoteRequest message or plain object
+ * @returns Promise
+ */
+ public getNote(request: grafeas.v1beta1.IGetNoteRequest): Promise;
+
+ /**
+ * Calls ListNotes.
+ * @param request ListNotesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNotesResponse
+ */
+ public listNotes(request: grafeas.v1beta1.IListNotesRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.ListNotesCallback): void;
+
+ /**
+ * Calls ListNotes.
+ * @param request ListNotesRequest message or plain object
+ * @returns Promise
+ */
+ public listNotes(request: grafeas.v1beta1.IListNotesRequest): Promise;
+
+ /**
+ * Calls DeleteNote.
+ * @param request DeleteNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteNote(request: grafeas.v1beta1.IDeleteNoteRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.DeleteNoteCallback): void;
+
+ /**
+ * Calls DeleteNote.
+ * @param request DeleteNoteRequest message or plain object
+ * @returns Promise
+ */
+ public deleteNote(request: grafeas.v1beta1.IDeleteNoteRequest): Promise;
+
+ /**
+ * Calls CreateNote.
+ * @param request CreateNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public createNote(request: grafeas.v1beta1.ICreateNoteRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.CreateNoteCallback): void;
+
+ /**
+ * Calls CreateNote.
+ * @param request CreateNoteRequest message or plain object
+ * @returns Promise
+ */
+ public createNote(request: grafeas.v1beta1.ICreateNoteRequest): Promise;
+
+ /**
+ * Calls BatchCreateNotes.
+ * @param request BatchCreateNotesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BatchCreateNotesResponse
+ */
+ public batchCreateNotes(request: grafeas.v1beta1.IBatchCreateNotesRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.BatchCreateNotesCallback): void;
+
+ /**
+ * Calls BatchCreateNotes.
+ * @param request BatchCreateNotesRequest message or plain object
+ * @returns Promise
+ */
+ public batchCreateNotes(request: grafeas.v1beta1.IBatchCreateNotesRequest): Promise;
+
+ /**
+ * Calls UpdateNote.
+ * @param request UpdateNoteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Note
+ */
+ public updateNote(request: grafeas.v1beta1.IUpdateNoteRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.UpdateNoteCallback): void;
+
+ /**
+ * Calls UpdateNote.
+ * @param request UpdateNoteRequest message or plain object
+ * @returns Promise
+ */
+ public updateNote(request: grafeas.v1beta1.IUpdateNoteRequest): Promise;
+
+ /**
+ * Calls ListNoteOccurrences.
+ * @param request ListNoteOccurrencesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNoteOccurrencesResponse
+ */
+ public listNoteOccurrences(request: grafeas.v1beta1.IListNoteOccurrencesRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.ListNoteOccurrencesCallback): void;
+
+ /**
+ * Calls ListNoteOccurrences.
+ * @param request ListNoteOccurrencesRequest message or plain object
+ * @returns Promise
+ */
+ public listNoteOccurrences(request: grafeas.v1beta1.IListNoteOccurrencesRequest): Promise;
+
+ /**
+ * Calls GetVulnerabilityOccurrencesSummary.
+ * @param request GetVulnerabilityOccurrencesSummaryRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and VulnerabilityOccurrencesSummary
+ */
+ public getVulnerabilityOccurrencesSummary(request: grafeas.v1beta1.IGetVulnerabilityOccurrencesSummaryRequest, callback: grafeas.v1beta1.GrafeasV1Beta1.GetVulnerabilityOccurrencesSummaryCallback): void;
+
+ /**
+ * Calls GetVulnerabilityOccurrencesSummary.
+ * @param request GetVulnerabilityOccurrencesSummaryRequest message or plain object
+ * @returns Promise
+ */
+ public getVulnerabilityOccurrencesSummary(request: grafeas.v1beta1.IGetVulnerabilityOccurrencesSummaryRequest): Promise;
+ }
+
+ namespace GrafeasV1Beta1 {
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|getOccurrence}.
+ * @param error Error, if any
+ * @param [response] Occurrence
+ */
+ type GetOccurrenceCallback = (error: (Error|null), response?: grafeas.v1beta1.Occurrence) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|listOccurrences}.
+ * @param error Error, if any
+ * @param [response] ListOccurrencesResponse
+ */
+ type ListOccurrencesCallback = (error: (Error|null), response?: grafeas.v1beta1.ListOccurrencesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|deleteOccurrence}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteOccurrenceCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|createOccurrence}.
+ * @param error Error, if any
+ * @param [response] Occurrence
+ */
+ type CreateOccurrenceCallback = (error: (Error|null), response?: grafeas.v1beta1.Occurrence) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|batchCreateOccurrences}.
+ * @param error Error, if any
+ * @param [response] BatchCreateOccurrencesResponse
+ */
+ type BatchCreateOccurrencesCallback = (error: (Error|null), response?: grafeas.v1beta1.BatchCreateOccurrencesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|updateOccurrence}.
+ * @param error Error, if any
+ * @param [response] Occurrence
+ */
+ type UpdateOccurrenceCallback = (error: (Error|null), response?: grafeas.v1beta1.Occurrence) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|getOccurrenceNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type GetOccurrenceNoteCallback = (error: (Error|null), response?: grafeas.v1beta1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|getNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type GetNoteCallback = (error: (Error|null), response?: grafeas.v1beta1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|listNotes}.
+ * @param error Error, if any
+ * @param [response] ListNotesResponse
+ */
+ type ListNotesCallback = (error: (Error|null), response?: grafeas.v1beta1.ListNotesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|deleteNote}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteNoteCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|createNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type CreateNoteCallback = (error: (Error|null), response?: grafeas.v1beta1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|batchCreateNotes}.
+ * @param error Error, if any
+ * @param [response] BatchCreateNotesResponse
+ */
+ type BatchCreateNotesCallback = (error: (Error|null), response?: grafeas.v1beta1.BatchCreateNotesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|updateNote}.
+ * @param error Error, if any
+ * @param [response] Note
+ */
+ type UpdateNoteCallback = (error: (Error|null), response?: grafeas.v1beta1.Note) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|listNoteOccurrences}.
+ * @param error Error, if any
+ * @param [response] ListNoteOccurrencesResponse
+ */
+ type ListNoteOccurrencesCallback = (error: (Error|null), response?: grafeas.v1beta1.ListNoteOccurrencesResponse) => void;
+
+ /**
+ * Callback as used by {@link grafeas.v1beta1.GrafeasV1Beta1|getVulnerabilityOccurrencesSummary}.
+ * @param error Error, if any
+ * @param [response] VulnerabilityOccurrencesSummary
+ */
+ type GetVulnerabilityOccurrencesSummaryCallback = (error: (Error|null), response?: grafeas.v1beta1.VulnerabilityOccurrencesSummary) => void;
+ }
+
+ /** Properties of an Occurrence. */
+ interface IOccurrence {
+
+ /** Occurrence name */
+ name?: (string|null);
+
+ /** Occurrence resource */
+ resource?: (grafeas.v1beta1.IResource|null);
+
+ /** Occurrence noteName */
+ noteName?: (string|null);
+
+ /** Occurrence kind */
+ kind?: (grafeas.v1beta1.NoteKind|keyof typeof grafeas.v1beta1.NoteKind|null);
+
+ /** Occurrence remediation */
+ remediation?: (string|null);
+
+ /** Occurrence createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence vulnerability */
+ vulnerability?: (grafeas.v1beta1.vulnerability.IDetails|null);
+
+ /** Occurrence build */
+ build?: (grafeas.v1beta1.build.IDetails|null);
+
+ /** Occurrence derivedImage */
+ derivedImage?: (grafeas.v1beta1.image.IDetails|null);
+
+ /** Occurrence installation */
+ installation?: (grafeas.v1beta1.package_.IDetails|null);
+
+ /** Occurrence deployment */
+ deployment?: (grafeas.v1beta1.deployment.IDetails|null);
+
+ /** Occurrence discovered */
+ discovered?: (grafeas.v1beta1.discovery.IDetails|null);
+
+ /** Occurrence attestation */
+ attestation?: (grafeas.v1beta1.attestation.IDetails|null);
+ }
+
+ /** Represents an Occurrence. */
+ class Occurrence implements IOccurrence {
+
+ /**
+ * Constructs a new Occurrence.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IOccurrence);
+
+ /** Occurrence name. */
+ public name: string;
+
+ /** Occurrence resource. */
+ public resource?: (grafeas.v1beta1.IResource|null);
+
+ /** Occurrence noteName. */
+ public noteName: string;
+
+ /** Occurrence kind. */
+ public kind: (grafeas.v1beta1.NoteKind|keyof typeof grafeas.v1beta1.NoteKind);
+
+ /** Occurrence remediation. */
+ public remediation: string;
+
+ /** Occurrence createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Occurrence vulnerability. */
+ public vulnerability?: (grafeas.v1beta1.vulnerability.IDetails|null);
+
+ /** Occurrence build. */
+ public build?: (grafeas.v1beta1.build.IDetails|null);
+
+ /** Occurrence derivedImage. */
+ public derivedImage?: (grafeas.v1beta1.image.IDetails|null);
+
+ /** Occurrence installation. */
+ public installation?: (grafeas.v1beta1.package_.IDetails|null);
+
+ /** Occurrence deployment. */
+ public deployment?: (grafeas.v1beta1.deployment.IDetails|null);
+
+ /** Occurrence discovered. */
+ public discovered?: (grafeas.v1beta1.discovery.IDetails|null);
+
+ /** Occurrence attestation. */
+ public attestation?: (grafeas.v1beta1.attestation.IDetails|null);
+
+ /** Occurrence details. */
+ public details?: ("vulnerability"|"build"|"derivedImage"|"installation"|"deployment"|"discovered"|"attestation");
+
+ /**
+ * Creates a new Occurrence instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Occurrence instance
+ */
+ public static create(properties?: grafeas.v1beta1.IOccurrence): grafeas.v1beta1.Occurrence;
+
+ /**
+ * Encodes the specified Occurrence message. Does not implicitly {@link grafeas.v1beta1.Occurrence.verify|verify} messages.
+ * @param message Occurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Occurrence message, length delimited. Does not implicitly {@link grafeas.v1beta1.Occurrence.verify|verify} messages.
+ * @param message Occurrence message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IOccurrence, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Occurrence message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Occurrence
+ * @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): grafeas.v1beta1.Occurrence;
+
+ /**
+ * Decodes an Occurrence message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Occurrence
+ * @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)): grafeas.v1beta1.Occurrence;
+
+ /**
+ * Verifies an Occurrence 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 Occurrence message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Occurrence
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.Occurrence;
+
+ /**
+ * Creates a plain object from an Occurrence message. Also converts values to other types if specified.
+ * @param message Occurrence
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.Occurrence, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Occurrence to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Occurrence
+ * @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 uri */
+ uri?: (string|null);
+
+ /** Resource contentHash */
+ contentHash?: (grafeas.v1beta1.provenance.IHash|null);
+ }
+
+ /** Represents a Resource. */
+ class Resource implements IResource {
+
+ /**
+ * Constructs a new Resource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IResource);
+
+ /** Resource name. */
+ public name: string;
+
+ /** Resource uri. */
+ public uri: string;
+
+ /** Resource contentHash. */
+ public contentHash?: (grafeas.v1beta1.provenance.IHash|null);
+
+ /**
+ * Creates a new Resource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Resource instance
+ */
+ public static create(properties?: grafeas.v1beta1.IResource): grafeas.v1beta1.Resource;
+
+ /**
+ * Encodes the specified Resource message. Does not implicitly {@link grafeas.v1beta1.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: grafeas.v1beta1.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Resource message, length delimited. Does not implicitly {@link grafeas.v1beta1.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: grafeas.v1beta1.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): grafeas.v1beta1.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)): grafeas.v1beta1.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 }): grafeas.v1beta1.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: grafeas.v1beta1.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 Note. */
+ interface INote {
+
+ /** Note name */
+ name?: (string|null);
+
+ /** Note shortDescription */
+ shortDescription?: (string|null);
+
+ /** Note longDescription */
+ longDescription?: (string|null);
+
+ /** Note kind */
+ kind?: (grafeas.v1beta1.NoteKind|keyof typeof grafeas.v1beta1.NoteKind|null);
+
+ /** Note relatedUrl */
+ relatedUrl?: (grafeas.v1beta1.IRelatedUrl[]|null);
+
+ /** Note expirationTime */
+ expirationTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note relatedNoteNames */
+ relatedNoteNames?: (string[]|null);
+
+ /** Note vulnerability */
+ vulnerability?: (grafeas.v1beta1.vulnerability.IVulnerability|null);
+
+ /** Note build */
+ build?: (grafeas.v1beta1.build.IBuild|null);
+
+ /** Note baseImage */
+ baseImage?: (grafeas.v1beta1.image.IBasis|null);
+
+ /** Note package */
+ "package"?: (grafeas.v1beta1.package_.IPackage|null);
+
+ /** Note deployable */
+ deployable?: (grafeas.v1beta1.deployment.IDeployable|null);
+
+ /** Note discovery */
+ discovery?: (grafeas.v1beta1.discovery.IDiscovery|null);
+
+ /** Note attestationAuthority */
+ attestationAuthority?: (grafeas.v1beta1.attestation.IAuthority|null);
+ }
+
+ /** Represents a Note. */
+ class Note implements INote {
+
+ /**
+ * Constructs a new Note.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.INote);
+
+ /** Note name. */
+ public name: string;
+
+ /** Note shortDescription. */
+ public shortDescription: string;
+
+ /** Note longDescription. */
+ public longDescription: string;
+
+ /** Note kind. */
+ public kind: (grafeas.v1beta1.NoteKind|keyof typeof grafeas.v1beta1.NoteKind);
+
+ /** Note relatedUrl. */
+ public relatedUrl: grafeas.v1beta1.IRelatedUrl[];
+
+ /** Note expirationTime. */
+ public expirationTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Note relatedNoteNames. */
+ public relatedNoteNames: string[];
+
+ /** Note vulnerability. */
+ public vulnerability?: (grafeas.v1beta1.vulnerability.IVulnerability|null);
+
+ /** Note build. */
+ public build?: (grafeas.v1beta1.build.IBuild|null);
+
+ /** Note baseImage. */
+ public baseImage?: (grafeas.v1beta1.image.IBasis|null);
+
+ /** Note package. */
+ public package?: (grafeas.v1beta1.package_.IPackage|null);
+
+ /** Note deployable. */
+ public deployable?: (grafeas.v1beta1.deployment.IDeployable|null);
+
+ /** Note discovery. */
+ public discovery?: (grafeas.v1beta1.discovery.IDiscovery|null);
+
+ /** Note attestationAuthority. */
+ public attestationAuthority?: (grafeas.v1beta1.attestation.IAuthority|null);
+
+ /** Note type. */
+ public type?: ("vulnerability"|"build"|"baseImage"|"package"|"deployable"|"discovery"|"attestationAuthority");
+
+ /**
+ * Creates a new Note instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Note instance
+ */
+ public static create(properties?: grafeas.v1beta1.INote): grafeas.v1beta1.Note;
+
+ /**
+ * Encodes the specified Note message. Does not implicitly {@link grafeas.v1beta1.Note.verify|verify} messages.
+ * @param message Note message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.INote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Note message, length delimited. Does not implicitly {@link grafeas.v1beta1.Note.verify|verify} messages.
+ * @param message Note message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.INote, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Note message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Note
+ * @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): grafeas.v1beta1.Note;
+
+ /**
+ * Decodes a Note message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Note
+ * @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)): grafeas.v1beta1.Note;
+
+ /**
+ * Verifies a Note 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 Note message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Note
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.Note;
+
+ /**
+ * Creates a plain object from a Note message. Also converts values to other types if specified.
+ * @param message Note
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.Note, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Note to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Note
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOccurrenceRequest. */
+ interface IGetOccurrenceRequest {
+
+ /** GetOccurrenceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOccurrenceRequest. */
+ class GetOccurrenceRequest implements IGetOccurrenceRequest {
+
+ /**
+ * Constructs a new GetOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IGetOccurrenceRequest);
+
+ /** GetOccurrenceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IGetOccurrenceRequest): grafeas.v1beta1.GetOccurrenceRequest;
+
+ /**
+ * Encodes the specified GetOccurrenceRequest message. Does not implicitly {@link grafeas.v1beta1.GetOccurrenceRequest.verify|verify} messages.
+ * @param message GetOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IGetOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.GetOccurrenceRequest.verify|verify} messages.
+ * @param message GetOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IGetOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOccurrenceRequest
+ * @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): grafeas.v1beta1.GetOccurrenceRequest;
+
+ /**
+ * Decodes a GetOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOccurrenceRequest
+ * @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)): grafeas.v1beta1.GetOccurrenceRequest;
+
+ /**
+ * Verifies a GetOccurrenceRequest 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 GetOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.GetOccurrenceRequest;
+
+ /**
+ * Creates a plain object from a GetOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message GetOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.GetOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOccurrencesRequest. */
+ interface IListOccurrencesRequest {
+
+ /** ListOccurrencesRequest parent */
+ parent?: (string|null);
+
+ /** ListOccurrencesRequest filter */
+ filter?: (string|null);
+
+ /** ListOccurrencesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListOccurrencesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListOccurrencesRequest. */
+ class ListOccurrencesRequest implements IListOccurrencesRequest {
+
+ /**
+ * Constructs a new ListOccurrencesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IListOccurrencesRequest);
+
+ /** ListOccurrencesRequest parent. */
+ public parent: string;
+
+ /** ListOccurrencesRequest filter. */
+ public filter: string;
+
+ /** ListOccurrencesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListOccurrencesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListOccurrencesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOccurrencesRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IListOccurrencesRequest): grafeas.v1beta1.ListOccurrencesRequest;
+
+ /**
+ * Encodes the specified ListOccurrencesRequest message. Does not implicitly {@link grafeas.v1beta1.ListOccurrencesRequest.verify|verify} messages.
+ * @param message ListOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IListOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOccurrencesRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.ListOccurrencesRequest.verify|verify} messages.
+ * @param message ListOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IListOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOccurrencesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOccurrencesRequest
+ * @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): grafeas.v1beta1.ListOccurrencesRequest;
+
+ /**
+ * Decodes a ListOccurrencesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOccurrencesRequest
+ * @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)): grafeas.v1beta1.ListOccurrencesRequest;
+
+ /**
+ * Verifies a ListOccurrencesRequest 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 ListOccurrencesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOccurrencesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.ListOccurrencesRequest;
+
+ /**
+ * Creates a plain object from a ListOccurrencesRequest message. Also converts values to other types if specified.
+ * @param message ListOccurrencesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.ListOccurrencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOccurrencesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOccurrencesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOccurrencesResponse. */
+ interface IListOccurrencesResponse {
+
+ /** ListOccurrencesResponse occurrences */
+ occurrences?: (grafeas.v1beta1.IOccurrence[]|null);
+
+ /** ListOccurrencesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListOccurrencesResponse. */
+ class ListOccurrencesResponse implements IListOccurrencesResponse {
+
+ /**
+ * Constructs a new ListOccurrencesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IListOccurrencesResponse);
+
+ /** ListOccurrencesResponse occurrences. */
+ public occurrences: grafeas.v1beta1.IOccurrence[];
+
+ /** ListOccurrencesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListOccurrencesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOccurrencesResponse instance
+ */
+ public static create(properties?: grafeas.v1beta1.IListOccurrencesResponse): grafeas.v1beta1.ListOccurrencesResponse;
+
+ /**
+ * Encodes the specified ListOccurrencesResponse message. Does not implicitly {@link grafeas.v1beta1.ListOccurrencesResponse.verify|verify} messages.
+ * @param message ListOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IListOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOccurrencesResponse message, length delimited. Does not implicitly {@link grafeas.v1beta1.ListOccurrencesResponse.verify|verify} messages.
+ * @param message ListOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IListOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOccurrencesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOccurrencesResponse
+ * @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): grafeas.v1beta1.ListOccurrencesResponse;
+
+ /**
+ * Decodes a ListOccurrencesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOccurrencesResponse
+ * @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)): grafeas.v1beta1.ListOccurrencesResponse;
+
+ /**
+ * Verifies a ListOccurrencesResponse 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 ListOccurrencesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOccurrencesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.ListOccurrencesResponse;
+
+ /**
+ * Creates a plain object from a ListOccurrencesResponse message. Also converts values to other types if specified.
+ * @param message ListOccurrencesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.ListOccurrencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOccurrencesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOccurrencesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteOccurrenceRequest. */
+ interface IDeleteOccurrenceRequest {
+
+ /** DeleteOccurrenceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteOccurrenceRequest. */
+ class DeleteOccurrenceRequest implements IDeleteOccurrenceRequest {
+
+ /**
+ * Constructs a new DeleteOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IDeleteOccurrenceRequest);
+
+ /** DeleteOccurrenceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IDeleteOccurrenceRequest): grafeas.v1beta1.DeleteOccurrenceRequest;
+
+ /**
+ * Encodes the specified DeleteOccurrenceRequest message. Does not implicitly {@link grafeas.v1beta1.DeleteOccurrenceRequest.verify|verify} messages.
+ * @param message DeleteOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IDeleteOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.DeleteOccurrenceRequest.verify|verify} messages.
+ * @param message DeleteOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IDeleteOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteOccurrenceRequest
+ * @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): grafeas.v1beta1.DeleteOccurrenceRequest;
+
+ /**
+ * Decodes a DeleteOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteOccurrenceRequest
+ * @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)): grafeas.v1beta1.DeleteOccurrenceRequest;
+
+ /**
+ * Verifies a DeleteOccurrenceRequest 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 DeleteOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.DeleteOccurrenceRequest;
+
+ /**
+ * Creates a plain object from a DeleteOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message DeleteOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.DeleteOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateOccurrenceRequest. */
+ interface ICreateOccurrenceRequest {
+
+ /** CreateOccurrenceRequest parent */
+ parent?: (string|null);
+
+ /** CreateOccurrenceRequest occurrence */
+ occurrence?: (grafeas.v1beta1.IOccurrence|null);
+ }
+
+ /** Represents a CreateOccurrenceRequest. */
+ class CreateOccurrenceRequest implements ICreateOccurrenceRequest {
+
+ /**
+ * Constructs a new CreateOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.ICreateOccurrenceRequest);
+
+ /** CreateOccurrenceRequest parent. */
+ public parent: string;
+
+ /** CreateOccurrenceRequest occurrence. */
+ public occurrence?: (grafeas.v1beta1.IOccurrence|null);
+
+ /**
+ * Creates a new CreateOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.ICreateOccurrenceRequest): grafeas.v1beta1.CreateOccurrenceRequest;
+
+ /**
+ * Encodes the specified CreateOccurrenceRequest message. Does not implicitly {@link grafeas.v1beta1.CreateOccurrenceRequest.verify|verify} messages.
+ * @param message CreateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.ICreateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.CreateOccurrenceRequest.verify|verify} messages.
+ * @param message CreateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.ICreateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateOccurrenceRequest
+ * @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): grafeas.v1beta1.CreateOccurrenceRequest;
+
+ /**
+ * Decodes a CreateOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateOccurrenceRequest
+ * @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)): grafeas.v1beta1.CreateOccurrenceRequest;
+
+ /**
+ * Verifies a CreateOccurrenceRequest 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 CreateOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.CreateOccurrenceRequest;
+
+ /**
+ * Creates a plain object from a CreateOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message CreateOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.CreateOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateOccurrenceRequest. */
+ interface IUpdateOccurrenceRequest {
+
+ /** UpdateOccurrenceRequest name */
+ name?: (string|null);
+
+ /** UpdateOccurrenceRequest occurrence */
+ occurrence?: (grafeas.v1beta1.IOccurrence|null);
+
+ /** UpdateOccurrenceRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateOccurrenceRequest. */
+ class UpdateOccurrenceRequest implements IUpdateOccurrenceRequest {
+
+ /**
+ * Constructs a new UpdateOccurrenceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IUpdateOccurrenceRequest);
+
+ /** UpdateOccurrenceRequest name. */
+ public name: string;
+
+ /** UpdateOccurrenceRequest occurrence. */
+ public occurrence?: (grafeas.v1beta1.IOccurrence|null);
+
+ /** UpdateOccurrenceRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateOccurrenceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateOccurrenceRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IUpdateOccurrenceRequest): grafeas.v1beta1.UpdateOccurrenceRequest;
+
+ /**
+ * Encodes the specified UpdateOccurrenceRequest message. Does not implicitly {@link grafeas.v1beta1.UpdateOccurrenceRequest.verify|verify} messages.
+ * @param message UpdateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IUpdateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateOccurrenceRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.UpdateOccurrenceRequest.verify|verify} messages.
+ * @param message UpdateOccurrenceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IUpdateOccurrenceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateOccurrenceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateOccurrenceRequest
+ * @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): grafeas.v1beta1.UpdateOccurrenceRequest;
+
+ /**
+ * Decodes an UpdateOccurrenceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateOccurrenceRequest
+ * @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)): grafeas.v1beta1.UpdateOccurrenceRequest;
+
+ /**
+ * Verifies an UpdateOccurrenceRequest 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 UpdateOccurrenceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateOccurrenceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.UpdateOccurrenceRequest;
+
+ /**
+ * Creates a plain object from an UpdateOccurrenceRequest message. Also converts values to other types if specified.
+ * @param message UpdateOccurrenceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.UpdateOccurrenceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateOccurrenceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateOccurrenceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetNoteRequest. */
+ interface IGetNoteRequest {
+
+ /** GetNoteRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetNoteRequest. */
+ class GetNoteRequest implements IGetNoteRequest {
+
+ /**
+ * Constructs a new GetNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IGetNoteRequest);
+
+ /** GetNoteRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IGetNoteRequest): grafeas.v1beta1.GetNoteRequest;
+
+ /**
+ * Encodes the specified GetNoteRequest message. Does not implicitly {@link grafeas.v1beta1.GetNoteRequest.verify|verify} messages.
+ * @param message GetNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IGetNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.GetNoteRequest.verify|verify} messages.
+ * @param message GetNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IGetNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetNoteRequest
+ * @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): grafeas.v1beta1.GetNoteRequest;
+
+ /**
+ * Decodes a GetNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetNoteRequest
+ * @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)): grafeas.v1beta1.GetNoteRequest;
+
+ /**
+ * Verifies a GetNoteRequest 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 GetNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.GetNoteRequest;
+
+ /**
+ * Creates a plain object from a GetNoteRequest message. Also converts values to other types if specified.
+ * @param message GetNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.GetNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOccurrenceNoteRequest. */
+ interface IGetOccurrenceNoteRequest {
+
+ /** GetOccurrenceNoteRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOccurrenceNoteRequest. */
+ class GetOccurrenceNoteRequest implements IGetOccurrenceNoteRequest {
+
+ /**
+ * Constructs a new GetOccurrenceNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IGetOccurrenceNoteRequest);
+
+ /** GetOccurrenceNoteRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOccurrenceNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOccurrenceNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IGetOccurrenceNoteRequest): grafeas.v1beta1.GetOccurrenceNoteRequest;
+
+ /**
+ * Encodes the specified GetOccurrenceNoteRequest message. Does not implicitly {@link grafeas.v1beta1.GetOccurrenceNoteRequest.verify|verify} messages.
+ * @param message GetOccurrenceNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IGetOccurrenceNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOccurrenceNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.GetOccurrenceNoteRequest.verify|verify} messages.
+ * @param message GetOccurrenceNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IGetOccurrenceNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOccurrenceNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOccurrenceNoteRequest
+ * @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): grafeas.v1beta1.GetOccurrenceNoteRequest;
+
+ /**
+ * Decodes a GetOccurrenceNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOccurrenceNoteRequest
+ * @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)): grafeas.v1beta1.GetOccurrenceNoteRequest;
+
+ /**
+ * Verifies a GetOccurrenceNoteRequest 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 GetOccurrenceNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOccurrenceNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.GetOccurrenceNoteRequest;
+
+ /**
+ * Creates a plain object from a GetOccurrenceNoteRequest message. Also converts values to other types if specified.
+ * @param message GetOccurrenceNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.GetOccurrenceNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOccurrenceNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOccurrenceNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotesRequest. */
+ interface IListNotesRequest {
+
+ /** ListNotesRequest parent */
+ parent?: (string|null);
+
+ /** ListNotesRequest filter */
+ filter?: (string|null);
+
+ /** ListNotesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListNotesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListNotesRequest. */
+ class ListNotesRequest implements IListNotesRequest {
+
+ /**
+ * Constructs a new ListNotesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IListNotesRequest);
+
+ /** ListNotesRequest parent. */
+ public parent: string;
+
+ /** ListNotesRequest filter. */
+ public filter: string;
+
+ /** ListNotesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListNotesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListNotesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotesRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IListNotesRequest): grafeas.v1beta1.ListNotesRequest;
+
+ /**
+ * Encodes the specified ListNotesRequest message. Does not implicitly {@link grafeas.v1beta1.ListNotesRequest.verify|verify} messages.
+ * @param message ListNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IListNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotesRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.ListNotesRequest.verify|verify} messages.
+ * @param message ListNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IListNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotesRequest
+ * @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): grafeas.v1beta1.ListNotesRequest;
+
+ /**
+ * Decodes a ListNotesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotesRequest
+ * @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)): grafeas.v1beta1.ListNotesRequest;
+
+ /**
+ * Verifies a ListNotesRequest 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 ListNotesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.ListNotesRequest;
+
+ /**
+ * Creates a plain object from a ListNotesRequest message. Also converts values to other types if specified.
+ * @param message ListNotesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.ListNotesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotesResponse. */
+ interface IListNotesResponse {
+
+ /** ListNotesResponse notes */
+ notes?: (grafeas.v1beta1.INote[]|null);
+
+ /** ListNotesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListNotesResponse. */
+ class ListNotesResponse implements IListNotesResponse {
+
+ /**
+ * Constructs a new ListNotesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IListNotesResponse);
+
+ /** ListNotesResponse notes. */
+ public notes: grafeas.v1beta1.INote[];
+
+ /** ListNotesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListNotesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotesResponse instance
+ */
+ public static create(properties?: grafeas.v1beta1.IListNotesResponse): grafeas.v1beta1.ListNotesResponse;
+
+ /**
+ * Encodes the specified ListNotesResponse message. Does not implicitly {@link grafeas.v1beta1.ListNotesResponse.verify|verify} messages.
+ * @param message ListNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IListNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotesResponse message, length delimited. Does not implicitly {@link grafeas.v1beta1.ListNotesResponse.verify|verify} messages.
+ * @param message ListNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IListNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotesResponse
+ * @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): grafeas.v1beta1.ListNotesResponse;
+
+ /**
+ * Decodes a ListNotesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotesResponse
+ * @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)): grafeas.v1beta1.ListNotesResponse;
+
+ /**
+ * Verifies a ListNotesResponse 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 ListNotesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.ListNotesResponse;
+
+ /**
+ * Creates a plain object from a ListNotesResponse message. Also converts values to other types if specified.
+ * @param message ListNotesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.ListNotesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteNoteRequest. */
+ interface IDeleteNoteRequest {
+
+ /** DeleteNoteRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteNoteRequest. */
+ class DeleteNoteRequest implements IDeleteNoteRequest {
+
+ /**
+ * Constructs a new DeleteNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IDeleteNoteRequest);
+
+ /** DeleteNoteRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IDeleteNoteRequest): grafeas.v1beta1.DeleteNoteRequest;
+
+ /**
+ * Encodes the specified DeleteNoteRequest message. Does not implicitly {@link grafeas.v1beta1.DeleteNoteRequest.verify|verify} messages.
+ * @param message DeleteNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IDeleteNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.DeleteNoteRequest.verify|verify} messages.
+ * @param message DeleteNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IDeleteNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteNoteRequest
+ * @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): grafeas.v1beta1.DeleteNoteRequest;
+
+ /**
+ * Decodes a DeleteNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteNoteRequest
+ * @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)): grafeas.v1beta1.DeleteNoteRequest;
+
+ /**
+ * Verifies a DeleteNoteRequest 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 DeleteNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.DeleteNoteRequest;
+
+ /**
+ * Creates a plain object from a DeleteNoteRequest message. Also converts values to other types if specified.
+ * @param message DeleteNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.DeleteNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateNoteRequest. */
+ interface ICreateNoteRequest {
+
+ /** CreateNoteRequest parent */
+ parent?: (string|null);
+
+ /** CreateNoteRequest noteId */
+ noteId?: (string|null);
+
+ /** CreateNoteRequest note */
+ note?: (grafeas.v1beta1.INote|null);
+ }
+
+ /** Represents a CreateNoteRequest. */
+ class CreateNoteRequest implements ICreateNoteRequest {
+
+ /**
+ * Constructs a new CreateNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.ICreateNoteRequest);
+
+ /** CreateNoteRequest parent. */
+ public parent: string;
+
+ /** CreateNoteRequest noteId. */
+ public noteId: string;
+
+ /** CreateNoteRequest note. */
+ public note?: (grafeas.v1beta1.INote|null);
+
+ /**
+ * Creates a new CreateNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.ICreateNoteRequest): grafeas.v1beta1.CreateNoteRequest;
+
+ /**
+ * Encodes the specified CreateNoteRequest message. Does not implicitly {@link grafeas.v1beta1.CreateNoteRequest.verify|verify} messages.
+ * @param message CreateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.ICreateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.CreateNoteRequest.verify|verify} messages.
+ * @param message CreateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.ICreateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateNoteRequest
+ * @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): grafeas.v1beta1.CreateNoteRequest;
+
+ /**
+ * Decodes a CreateNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateNoteRequest
+ * @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)): grafeas.v1beta1.CreateNoteRequest;
+
+ /**
+ * Verifies a CreateNoteRequest 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 CreateNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.CreateNoteRequest;
+
+ /**
+ * Creates a plain object from a CreateNoteRequest message. Also converts values to other types if specified.
+ * @param message CreateNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.CreateNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateNoteRequest. */
+ interface IUpdateNoteRequest {
+
+ /** UpdateNoteRequest name */
+ name?: (string|null);
+
+ /** UpdateNoteRequest note */
+ note?: (grafeas.v1beta1.INote|null);
+
+ /** UpdateNoteRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateNoteRequest. */
+ class UpdateNoteRequest implements IUpdateNoteRequest {
+
+ /**
+ * Constructs a new UpdateNoteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IUpdateNoteRequest);
+
+ /** UpdateNoteRequest name. */
+ public name: string;
+
+ /** UpdateNoteRequest note. */
+ public note?: (grafeas.v1beta1.INote|null);
+
+ /** UpdateNoteRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateNoteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateNoteRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IUpdateNoteRequest): grafeas.v1beta1.UpdateNoteRequest;
+
+ /**
+ * Encodes the specified UpdateNoteRequest message. Does not implicitly {@link grafeas.v1beta1.UpdateNoteRequest.verify|verify} messages.
+ * @param message UpdateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IUpdateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateNoteRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.UpdateNoteRequest.verify|verify} messages.
+ * @param message UpdateNoteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IUpdateNoteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateNoteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateNoteRequest
+ * @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): grafeas.v1beta1.UpdateNoteRequest;
+
+ /**
+ * Decodes an UpdateNoteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateNoteRequest
+ * @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)): grafeas.v1beta1.UpdateNoteRequest;
+
+ /**
+ * Verifies an UpdateNoteRequest 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 UpdateNoteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateNoteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.UpdateNoteRequest;
+
+ /**
+ * Creates a plain object from an UpdateNoteRequest message. Also converts values to other types if specified.
+ * @param message UpdateNoteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.UpdateNoteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateNoteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateNoteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNoteOccurrencesRequest. */
+ interface IListNoteOccurrencesRequest {
+
+ /** ListNoteOccurrencesRequest name */
+ name?: (string|null);
+
+ /** ListNoteOccurrencesRequest filter */
+ filter?: (string|null);
+
+ /** ListNoteOccurrencesRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListNoteOccurrencesRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListNoteOccurrencesRequest. */
+ class ListNoteOccurrencesRequest implements IListNoteOccurrencesRequest {
+
+ /**
+ * Constructs a new ListNoteOccurrencesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IListNoteOccurrencesRequest);
+
+ /** ListNoteOccurrencesRequest name. */
+ public name: string;
+
+ /** ListNoteOccurrencesRequest filter. */
+ public filter: string;
+
+ /** ListNoteOccurrencesRequest pageSize. */
+ public pageSize: number;
+
+ /** ListNoteOccurrencesRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListNoteOccurrencesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNoteOccurrencesRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IListNoteOccurrencesRequest): grafeas.v1beta1.ListNoteOccurrencesRequest;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesRequest message. Does not implicitly {@link grafeas.v1beta1.ListNoteOccurrencesRequest.verify|verify} messages.
+ * @param message ListNoteOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IListNoteOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.ListNoteOccurrencesRequest.verify|verify} messages.
+ * @param message ListNoteOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IListNoteOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNoteOccurrencesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNoteOccurrencesRequest
+ * @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): grafeas.v1beta1.ListNoteOccurrencesRequest;
+
+ /**
+ * Decodes a ListNoteOccurrencesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNoteOccurrencesRequest
+ * @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)): grafeas.v1beta1.ListNoteOccurrencesRequest;
+
+ /**
+ * Verifies a ListNoteOccurrencesRequest 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 ListNoteOccurrencesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNoteOccurrencesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.ListNoteOccurrencesRequest;
+
+ /**
+ * Creates a plain object from a ListNoteOccurrencesRequest message. Also converts values to other types if specified.
+ * @param message ListNoteOccurrencesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.ListNoteOccurrencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNoteOccurrencesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNoteOccurrencesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNoteOccurrencesResponse. */
+ interface IListNoteOccurrencesResponse {
+
+ /** ListNoteOccurrencesResponse occurrences */
+ occurrences?: (grafeas.v1beta1.IOccurrence[]|null);
+
+ /** ListNoteOccurrencesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListNoteOccurrencesResponse. */
+ class ListNoteOccurrencesResponse implements IListNoteOccurrencesResponse {
+
+ /**
+ * Constructs a new ListNoteOccurrencesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IListNoteOccurrencesResponse);
+
+ /** ListNoteOccurrencesResponse occurrences. */
+ public occurrences: grafeas.v1beta1.IOccurrence[];
+
+ /** ListNoteOccurrencesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListNoteOccurrencesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNoteOccurrencesResponse instance
+ */
+ public static create(properties?: grafeas.v1beta1.IListNoteOccurrencesResponse): grafeas.v1beta1.ListNoteOccurrencesResponse;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesResponse message. Does not implicitly {@link grafeas.v1beta1.ListNoteOccurrencesResponse.verify|verify} messages.
+ * @param message ListNoteOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IListNoteOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNoteOccurrencesResponse message, length delimited. Does not implicitly {@link grafeas.v1beta1.ListNoteOccurrencesResponse.verify|verify} messages.
+ * @param message ListNoteOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IListNoteOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNoteOccurrencesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNoteOccurrencesResponse
+ * @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): grafeas.v1beta1.ListNoteOccurrencesResponse;
+
+ /**
+ * Decodes a ListNoteOccurrencesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNoteOccurrencesResponse
+ * @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)): grafeas.v1beta1.ListNoteOccurrencesResponse;
+
+ /**
+ * Verifies a ListNoteOccurrencesResponse 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 ListNoteOccurrencesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNoteOccurrencesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.ListNoteOccurrencesResponse;
+
+ /**
+ * Creates a plain object from a ListNoteOccurrencesResponse message. Also converts values to other types if specified.
+ * @param message ListNoteOccurrencesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.ListNoteOccurrencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNoteOccurrencesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNoteOccurrencesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateNotesRequest. */
+ interface IBatchCreateNotesRequest {
+
+ /** BatchCreateNotesRequest parent */
+ parent?: (string|null);
+
+ /** BatchCreateNotesRequest notes */
+ notes?: ({ [k: string]: grafeas.v1beta1.INote }|null);
+ }
+
+ /** Represents a BatchCreateNotesRequest. */
+ class BatchCreateNotesRequest implements IBatchCreateNotesRequest {
+
+ /**
+ * Constructs a new BatchCreateNotesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IBatchCreateNotesRequest);
+
+ /** BatchCreateNotesRequest parent. */
+ public parent: string;
+
+ /** BatchCreateNotesRequest notes. */
+ public notes: { [k: string]: grafeas.v1beta1.INote };
+
+ /**
+ * Creates a new BatchCreateNotesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateNotesRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IBatchCreateNotesRequest): grafeas.v1beta1.BatchCreateNotesRequest;
+
+ /**
+ * Encodes the specified BatchCreateNotesRequest message. Does not implicitly {@link grafeas.v1beta1.BatchCreateNotesRequest.verify|verify} messages.
+ * @param message BatchCreateNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IBatchCreateNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateNotesRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.BatchCreateNotesRequest.verify|verify} messages.
+ * @param message BatchCreateNotesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IBatchCreateNotesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateNotesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateNotesRequest
+ * @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): grafeas.v1beta1.BatchCreateNotesRequest;
+
+ /**
+ * Decodes a BatchCreateNotesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateNotesRequest
+ * @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)): grafeas.v1beta1.BatchCreateNotesRequest;
+
+ /**
+ * Verifies a BatchCreateNotesRequest 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 BatchCreateNotesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateNotesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.BatchCreateNotesRequest;
+
+ /**
+ * Creates a plain object from a BatchCreateNotesRequest message. Also converts values to other types if specified.
+ * @param message BatchCreateNotesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.BatchCreateNotesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateNotesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateNotesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateNotesResponse. */
+ interface IBatchCreateNotesResponse {
+
+ /** BatchCreateNotesResponse notes */
+ notes?: (grafeas.v1beta1.INote[]|null);
+ }
+
+ /** Represents a BatchCreateNotesResponse. */
+ class BatchCreateNotesResponse implements IBatchCreateNotesResponse {
+
+ /**
+ * Constructs a new BatchCreateNotesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IBatchCreateNotesResponse);
+
+ /** BatchCreateNotesResponse notes. */
+ public notes: grafeas.v1beta1.INote[];
+
+ /**
+ * Creates a new BatchCreateNotesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateNotesResponse instance
+ */
+ public static create(properties?: grafeas.v1beta1.IBatchCreateNotesResponse): grafeas.v1beta1.BatchCreateNotesResponse;
+
+ /**
+ * Encodes the specified BatchCreateNotesResponse message. Does not implicitly {@link grafeas.v1beta1.BatchCreateNotesResponse.verify|verify} messages.
+ * @param message BatchCreateNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IBatchCreateNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateNotesResponse message, length delimited. Does not implicitly {@link grafeas.v1beta1.BatchCreateNotesResponse.verify|verify} messages.
+ * @param message BatchCreateNotesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IBatchCreateNotesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateNotesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateNotesResponse
+ * @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): grafeas.v1beta1.BatchCreateNotesResponse;
+
+ /**
+ * Decodes a BatchCreateNotesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateNotesResponse
+ * @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)): grafeas.v1beta1.BatchCreateNotesResponse;
+
+ /**
+ * Verifies a BatchCreateNotesResponse 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 BatchCreateNotesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateNotesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.BatchCreateNotesResponse;
+
+ /**
+ * Creates a plain object from a BatchCreateNotesResponse message. Also converts values to other types if specified.
+ * @param message BatchCreateNotesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.BatchCreateNotesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateNotesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateNotesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateOccurrencesRequest. */
+ interface IBatchCreateOccurrencesRequest {
+
+ /** BatchCreateOccurrencesRequest parent */
+ parent?: (string|null);
+
+ /** BatchCreateOccurrencesRequest occurrences */
+ occurrences?: (grafeas.v1beta1.IOccurrence[]|null);
+ }
+
+ /** Represents a BatchCreateOccurrencesRequest. */
+ class BatchCreateOccurrencesRequest implements IBatchCreateOccurrencesRequest {
+
+ /**
+ * Constructs a new BatchCreateOccurrencesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IBatchCreateOccurrencesRequest);
+
+ /** BatchCreateOccurrencesRequest parent. */
+ public parent: string;
+
+ /** BatchCreateOccurrencesRequest occurrences. */
+ public occurrences: grafeas.v1beta1.IOccurrence[];
+
+ /**
+ * Creates a new BatchCreateOccurrencesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateOccurrencesRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IBatchCreateOccurrencesRequest): grafeas.v1beta1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesRequest message. Does not implicitly {@link grafeas.v1beta1.BatchCreateOccurrencesRequest.verify|verify} messages.
+ * @param message BatchCreateOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IBatchCreateOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.BatchCreateOccurrencesRequest.verify|verify} messages.
+ * @param message BatchCreateOccurrencesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IBatchCreateOccurrencesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateOccurrencesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateOccurrencesRequest
+ * @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): grafeas.v1beta1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Decodes a BatchCreateOccurrencesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateOccurrencesRequest
+ * @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)): grafeas.v1beta1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Verifies a BatchCreateOccurrencesRequest 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 BatchCreateOccurrencesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateOccurrencesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.BatchCreateOccurrencesRequest;
+
+ /**
+ * Creates a plain object from a BatchCreateOccurrencesRequest message. Also converts values to other types if specified.
+ * @param message BatchCreateOccurrencesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.BatchCreateOccurrencesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateOccurrencesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateOccurrencesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BatchCreateOccurrencesResponse. */
+ interface IBatchCreateOccurrencesResponse {
+
+ /** BatchCreateOccurrencesResponse occurrences */
+ occurrences?: (grafeas.v1beta1.IOccurrence[]|null);
+ }
+
+ /** Represents a BatchCreateOccurrencesResponse. */
+ class BatchCreateOccurrencesResponse implements IBatchCreateOccurrencesResponse {
+
+ /**
+ * Constructs a new BatchCreateOccurrencesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IBatchCreateOccurrencesResponse);
+
+ /** BatchCreateOccurrencesResponse occurrences. */
+ public occurrences: grafeas.v1beta1.IOccurrence[];
+
+ /**
+ * Creates a new BatchCreateOccurrencesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BatchCreateOccurrencesResponse instance
+ */
+ public static create(properties?: grafeas.v1beta1.IBatchCreateOccurrencesResponse): grafeas.v1beta1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesResponse message. Does not implicitly {@link grafeas.v1beta1.BatchCreateOccurrencesResponse.verify|verify} messages.
+ * @param message BatchCreateOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IBatchCreateOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BatchCreateOccurrencesResponse message, length delimited. Does not implicitly {@link grafeas.v1beta1.BatchCreateOccurrencesResponse.verify|verify} messages.
+ * @param message BatchCreateOccurrencesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IBatchCreateOccurrencesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BatchCreateOccurrencesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BatchCreateOccurrencesResponse
+ * @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): grafeas.v1beta1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Decodes a BatchCreateOccurrencesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BatchCreateOccurrencesResponse
+ * @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)): grafeas.v1beta1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Verifies a BatchCreateOccurrencesResponse 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 BatchCreateOccurrencesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BatchCreateOccurrencesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.BatchCreateOccurrencesResponse;
+
+ /**
+ * Creates a plain object from a BatchCreateOccurrencesResponse message. Also converts values to other types if specified.
+ * @param message BatchCreateOccurrencesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.BatchCreateOccurrencesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BatchCreateOccurrencesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BatchCreateOccurrencesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetVulnerabilityOccurrencesSummaryRequest. */
+ interface IGetVulnerabilityOccurrencesSummaryRequest {
+
+ /** GetVulnerabilityOccurrencesSummaryRequest parent */
+ parent?: (string|null);
+
+ /** GetVulnerabilityOccurrencesSummaryRequest filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a GetVulnerabilityOccurrencesSummaryRequest. */
+ class GetVulnerabilityOccurrencesSummaryRequest implements IGetVulnerabilityOccurrencesSummaryRequest {
+
+ /**
+ * Constructs a new GetVulnerabilityOccurrencesSummaryRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IGetVulnerabilityOccurrencesSummaryRequest);
+
+ /** GetVulnerabilityOccurrencesSummaryRequest parent. */
+ public parent: string;
+
+ /** GetVulnerabilityOccurrencesSummaryRequest filter. */
+ public filter: string;
+
+ /**
+ * Creates a new GetVulnerabilityOccurrencesSummaryRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetVulnerabilityOccurrencesSummaryRequest instance
+ */
+ public static create(properties?: grafeas.v1beta1.IGetVulnerabilityOccurrencesSummaryRequest): grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Encodes the specified GetVulnerabilityOccurrencesSummaryRequest message. Does not implicitly {@link grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest.verify|verify} messages.
+ * @param message GetVulnerabilityOccurrencesSummaryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IGetVulnerabilityOccurrencesSummaryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetVulnerabilityOccurrencesSummaryRequest message, length delimited. Does not implicitly {@link grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest.verify|verify} messages.
+ * @param message GetVulnerabilityOccurrencesSummaryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IGetVulnerabilityOccurrencesSummaryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetVulnerabilityOccurrencesSummaryRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetVulnerabilityOccurrencesSummaryRequest
+ * @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): grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Decodes a GetVulnerabilityOccurrencesSummaryRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetVulnerabilityOccurrencesSummaryRequest
+ * @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)): grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Verifies a GetVulnerabilityOccurrencesSummaryRequest 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 GetVulnerabilityOccurrencesSummaryRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetVulnerabilityOccurrencesSummaryRequest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Creates a plain object from a GetVulnerabilityOccurrencesSummaryRequest message. Also converts values to other types if specified.
+ * @param message GetVulnerabilityOccurrencesSummaryRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.GetVulnerabilityOccurrencesSummaryRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetVulnerabilityOccurrencesSummaryRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetVulnerabilityOccurrencesSummaryRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a VulnerabilityOccurrencesSummary. */
+ interface IVulnerabilityOccurrencesSummary {
+
+ /** VulnerabilityOccurrencesSummary counts */
+ counts?: (grafeas.v1beta1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest[]|null);
+ }
+
+ /** Represents a VulnerabilityOccurrencesSummary. */
+ class VulnerabilityOccurrencesSummary implements IVulnerabilityOccurrencesSummary {
+
+ /**
+ * Constructs a new VulnerabilityOccurrencesSummary.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.IVulnerabilityOccurrencesSummary);
+
+ /** VulnerabilityOccurrencesSummary counts. */
+ public counts: grafeas.v1beta1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest[];
+
+ /**
+ * Creates a new VulnerabilityOccurrencesSummary instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VulnerabilityOccurrencesSummary instance
+ */
+ public static create(properties?: grafeas.v1beta1.IVulnerabilityOccurrencesSummary): grafeas.v1beta1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Encodes the specified VulnerabilityOccurrencesSummary message. Does not implicitly {@link grafeas.v1beta1.VulnerabilityOccurrencesSummary.verify|verify} messages.
+ * @param message VulnerabilityOccurrencesSummary message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.IVulnerabilityOccurrencesSummary, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VulnerabilityOccurrencesSummary message, length delimited. Does not implicitly {@link grafeas.v1beta1.VulnerabilityOccurrencesSummary.verify|verify} messages.
+ * @param message VulnerabilityOccurrencesSummary message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.IVulnerabilityOccurrencesSummary, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VulnerabilityOccurrencesSummary message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VulnerabilityOccurrencesSummary
+ * @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): grafeas.v1beta1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Decodes a VulnerabilityOccurrencesSummary message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VulnerabilityOccurrencesSummary
+ * @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)): grafeas.v1beta1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Verifies a VulnerabilityOccurrencesSummary 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 VulnerabilityOccurrencesSummary message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VulnerabilityOccurrencesSummary
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Creates a plain object from a VulnerabilityOccurrencesSummary message. Also converts values to other types if specified.
+ * @param message VulnerabilityOccurrencesSummary
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.VulnerabilityOccurrencesSummary, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VulnerabilityOccurrencesSummary to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VulnerabilityOccurrencesSummary
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace VulnerabilityOccurrencesSummary {
+
+ /** Properties of a FixableTotalByDigest. */
+ interface IFixableTotalByDigest {
+
+ /** FixableTotalByDigest resource */
+ resource?: (grafeas.v1beta1.IResource|null);
+
+ /** FixableTotalByDigest severity */
+ severity?: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity|null);
+
+ /** FixableTotalByDigest fixableCount */
+ fixableCount?: (number|Long|string|null);
+
+ /** FixableTotalByDigest totalCount */
+ totalCount?: (number|Long|string|null);
+ }
+
+ /** Represents a FixableTotalByDigest. */
+ class FixableTotalByDigest implements IFixableTotalByDigest {
+
+ /**
+ * Constructs a new FixableTotalByDigest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest);
+
+ /** FixableTotalByDigest resource. */
+ public resource?: (grafeas.v1beta1.IResource|null);
+
+ /** FixableTotalByDigest severity. */
+ public severity: (grafeas.v1beta1.vulnerability.Severity|keyof typeof grafeas.v1beta1.vulnerability.Severity);
+
+ /** FixableTotalByDigest fixableCount. */
+ public fixableCount: (number|Long|string);
+
+ /** FixableTotalByDigest totalCount. */
+ public totalCount: (number|Long|string);
+
+ /**
+ * Creates a new FixableTotalByDigest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FixableTotalByDigest instance
+ */
+ public static create(properties?: grafeas.v1beta1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest): grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Encodes the specified FixableTotalByDigest message. Does not implicitly {@link grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest.verify|verify} messages.
+ * @param message FixableTotalByDigest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FixableTotalByDigest message, length delimited. Does not implicitly {@link grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest.verify|verify} messages.
+ * @param message FixableTotalByDigest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FixableTotalByDigest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FixableTotalByDigest
+ * @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): grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Decodes a FixableTotalByDigest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FixableTotalByDigest
+ * @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)): grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Verifies a FixableTotalByDigest 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 FixableTotalByDigest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FixableTotalByDigest
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Creates a plain object from a FixableTotalByDigest message. Also converts values to other types if specified.
+ * @param message FixableTotalByDigest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.VulnerabilityOccurrencesSummary.FixableTotalByDigest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FixableTotalByDigest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FixableTotalByDigest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace image. */
+ namespace image {
+
+ /** Properties of a Layer. */
+ interface ILayer {
+
+ /** Layer directive */
+ directive?: (grafeas.v1beta1.image.Layer.Directive|keyof typeof grafeas.v1beta1.image.Layer.Directive|null);
+
+ /** Layer arguments */
+ "arguments"?: (string|null);
+ }
+
+ /** Represents a Layer. */
+ class Layer implements ILayer {
+
+ /**
+ * Constructs a new Layer.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.image.ILayer);
+
+ /** Layer directive. */
+ public directive: (grafeas.v1beta1.image.Layer.Directive|keyof typeof grafeas.v1beta1.image.Layer.Directive);
+
+ /** Layer arguments. */
+ public arguments: string;
+
+ /**
+ * Creates a new Layer instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Layer instance
+ */
+ public static create(properties?: grafeas.v1beta1.image.ILayer): grafeas.v1beta1.image.Layer;
+
+ /**
+ * Encodes the specified Layer message. Does not implicitly {@link grafeas.v1beta1.image.Layer.verify|verify} messages.
+ * @param message Layer message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.image.ILayer, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Layer message, length delimited. Does not implicitly {@link grafeas.v1beta1.image.Layer.verify|verify} messages.
+ * @param message Layer message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.image.ILayer, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Layer message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Layer
+ * @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): grafeas.v1beta1.image.Layer;
+
+ /**
+ * Decodes a Layer message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Layer
+ * @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)): grafeas.v1beta1.image.Layer;
+
+ /**
+ * Verifies a Layer 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 Layer message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Layer
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.image.Layer;
+
+ /**
+ * Creates a plain object from a Layer message. Also converts values to other types if specified.
+ * @param message Layer
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.image.Layer, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Layer to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Layer
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Layer {
+
+ /** Directive enum. */
+ enum Directive {
+ DIRECTIVE_UNSPECIFIED = 0,
+ MAINTAINER = 1,
+ RUN = 2,
+ CMD = 3,
+ LABEL = 4,
+ EXPOSE = 5,
+ ENV = 6,
+ ADD = 7,
+ COPY = 8,
+ ENTRYPOINT = 9,
+ VOLUME = 10,
+ USER = 11,
+ WORKDIR = 12,
+ ARG = 13,
+ ONBUILD = 14,
+ STOPSIGNAL = 15,
+ HEALTHCHECK = 16,
+ SHELL = 17
+ }
+ }
+
+ /** Properties of a Fingerprint. */
+ interface IFingerprint {
+
+ /** Fingerprint v1Name */
+ v1Name?: (string|null);
+
+ /** Fingerprint v2Blob */
+ v2Blob?: (string[]|null);
+
+ /** Fingerprint v2Name */
+ v2Name?: (string|null);
+ }
+
+ /** Represents a Fingerprint. */
+ class Fingerprint implements IFingerprint {
+
+ /**
+ * Constructs a new Fingerprint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.image.IFingerprint);
+
+ /** Fingerprint v1Name. */
+ public v1Name: string;
+
+ /** Fingerprint v2Blob. */
+ public v2Blob: string[];
+
+ /** Fingerprint v2Name. */
+ public v2Name: string;
+
+ /**
+ * Creates a new Fingerprint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Fingerprint instance
+ */
+ public static create(properties?: grafeas.v1beta1.image.IFingerprint): grafeas.v1beta1.image.Fingerprint;
+
+ /**
+ * Encodes the specified Fingerprint message. Does not implicitly {@link grafeas.v1beta1.image.Fingerprint.verify|verify} messages.
+ * @param message Fingerprint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.image.IFingerprint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Fingerprint message, length delimited. Does not implicitly {@link grafeas.v1beta1.image.Fingerprint.verify|verify} messages.
+ * @param message Fingerprint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.image.IFingerprint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Fingerprint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Fingerprint
+ * @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): grafeas.v1beta1.image.Fingerprint;
+
+ /**
+ * Decodes a Fingerprint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Fingerprint
+ * @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)): grafeas.v1beta1.image.Fingerprint;
+
+ /**
+ * Verifies a Fingerprint 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 Fingerprint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Fingerprint
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.image.Fingerprint;
+
+ /**
+ * Creates a plain object from a Fingerprint message. Also converts values to other types if specified.
+ * @param message Fingerprint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.image.Fingerprint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Fingerprint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Fingerprint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Basis. */
+ interface IBasis {
+
+ /** Basis resourceUrl */
+ resourceUrl?: (string|null);
+
+ /** Basis fingerprint */
+ fingerprint?: (grafeas.v1beta1.image.IFingerprint|null);
+ }
+
+ /** Represents a Basis. */
+ class Basis implements IBasis {
+
+ /**
+ * Constructs a new Basis.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.image.IBasis);
+
+ /** Basis resourceUrl. */
+ public resourceUrl: string;
+
+ /** Basis fingerprint. */
+ public fingerprint?: (grafeas.v1beta1.image.IFingerprint|null);
+
+ /**
+ * Creates a new Basis instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Basis instance
+ */
+ public static create(properties?: grafeas.v1beta1.image.IBasis): grafeas.v1beta1.image.Basis;
+
+ /**
+ * Encodes the specified Basis message. Does not implicitly {@link grafeas.v1beta1.image.Basis.verify|verify} messages.
+ * @param message Basis message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.image.IBasis, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Basis message, length delimited. Does not implicitly {@link grafeas.v1beta1.image.Basis.verify|verify} messages.
+ * @param message Basis message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.image.IBasis, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Basis message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Basis
+ * @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): grafeas.v1beta1.image.Basis;
+
+ /**
+ * Decodes a Basis message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Basis
+ * @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)): grafeas.v1beta1.image.Basis;
+
+ /**
+ * Verifies a Basis 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 Basis message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Basis
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.image.Basis;
+
+ /**
+ * Creates a plain object from a Basis message. Also converts values to other types if specified.
+ * @param message Basis
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.image.Basis, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Basis to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Basis
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details derivedImage */
+ derivedImage?: (grafeas.v1beta1.image.IDerived|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.image.IDetails);
+
+ /** Details derivedImage. */
+ public derivedImage?: (grafeas.v1beta1.image.IDerived|null);
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.image.IDetails): grafeas.v1beta1.image.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.image.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.image.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.image.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.image.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.image.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.image.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.image.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.image.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Derived. */
+ interface IDerived {
+
+ /** Derived fingerprint */
+ fingerprint?: (grafeas.v1beta1.image.IFingerprint|null);
+
+ /** Derived distance */
+ distance?: (number|null);
+
+ /** Derived layerInfo */
+ layerInfo?: (grafeas.v1beta1.image.ILayer[]|null);
+
+ /** Derived baseResourceUrl */
+ baseResourceUrl?: (string|null);
+ }
+
+ /** Represents a Derived. */
+ class Derived implements IDerived {
+
+ /**
+ * Constructs a new Derived.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.image.IDerived);
+
+ /** Derived fingerprint. */
+ public fingerprint?: (grafeas.v1beta1.image.IFingerprint|null);
+
+ /** Derived distance. */
+ public distance: number;
+
+ /** Derived layerInfo. */
+ public layerInfo: grafeas.v1beta1.image.ILayer[];
+
+ /** Derived baseResourceUrl. */
+ public baseResourceUrl: string;
+
+ /**
+ * Creates a new Derived instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Derived instance
+ */
+ public static create(properties?: grafeas.v1beta1.image.IDerived): grafeas.v1beta1.image.Derived;
+
+ /**
+ * Encodes the specified Derived message. Does not implicitly {@link grafeas.v1beta1.image.Derived.verify|verify} messages.
+ * @param message Derived message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.image.IDerived, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Derived message, length delimited. Does not implicitly {@link grafeas.v1beta1.image.Derived.verify|verify} messages.
+ * @param message Derived message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.image.IDerived, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Derived message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Derived
+ * @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): grafeas.v1beta1.image.Derived;
+
+ /**
+ * Decodes a Derived message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Derived
+ * @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)): grafeas.v1beta1.image.Derived;
+
+ /**
+ * Verifies a Derived 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 Derived message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Derived
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.image.Derived;
+
+ /**
+ * Creates a plain object from a Derived message. Also converts values to other types if specified.
+ * @param message Derived
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.image.Derived, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Derived to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Derived
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace package. */
+ namespace package_ {
+
+ /** Architecture enum. */
+ enum Architecture {
+ ARCHITECTURE_UNSPECIFIED = 0,
+ X86 = 1,
+ X64 = 2
+ }
+
+ /** Properties of a Distribution. */
+ interface IDistribution {
+
+ /** Distribution cpeUri */
+ cpeUri?: (string|null);
+
+ /** Distribution architecture */
+ architecture?: (grafeas.v1beta1.package_.Architecture|keyof typeof grafeas.v1beta1.package_.Architecture|null);
+
+ /** Distribution latestVersion */
+ latestVersion?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Distribution maintainer */
+ maintainer?: (string|null);
+
+ /** Distribution url */
+ url?: (string|null);
+
+ /** Distribution description */
+ description?: (string|null);
+ }
+
+ /** Represents a Distribution. */
+ class Distribution implements IDistribution {
+
+ /**
+ * Constructs a new Distribution.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.package_.IDistribution);
+
+ /** Distribution cpeUri. */
+ public cpeUri: string;
+
+ /** Distribution architecture. */
+ public architecture: (grafeas.v1beta1.package_.Architecture|keyof typeof grafeas.v1beta1.package_.Architecture);
+
+ /** Distribution latestVersion. */
+ public latestVersion?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Distribution maintainer. */
+ public maintainer: string;
+
+ /** Distribution url. */
+ public url: string;
+
+ /** Distribution description. */
+ public description: string;
+
+ /**
+ * Creates a new Distribution instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Distribution instance
+ */
+ public static create(properties?: grafeas.v1beta1.package_.IDistribution): grafeas.v1beta1.package_.Distribution;
+
+ /**
+ * Encodes the specified Distribution message. Does not implicitly {@link grafeas.v1beta1.package_.Distribution.verify|verify} messages.
+ * @param message Distribution message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.package_.IDistribution, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Distribution message, length delimited. Does not implicitly {@link grafeas.v1beta1.package_.Distribution.verify|verify} messages.
+ * @param message Distribution message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.package_.IDistribution, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Distribution message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Distribution
+ * @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): grafeas.v1beta1.package_.Distribution;
+
+ /**
+ * Decodes a Distribution message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Distribution
+ * @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)): grafeas.v1beta1.package_.Distribution;
+
+ /**
+ * Verifies a Distribution 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 Distribution message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Distribution
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.package_.Distribution;
+
+ /**
+ * Creates a plain object from a Distribution message. Also converts values to other types if specified.
+ * @param message Distribution
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.package_.Distribution, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Distribution to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Distribution
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Location. */
+ interface ILocation {
+
+ /** Location cpeUri */
+ cpeUri?: (string|null);
+
+ /** Location version */
+ version?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Location path */
+ path?: (string|null);
+ }
+
+ /** Represents a Location. */
+ class Location implements ILocation {
+
+ /**
+ * Constructs a new Location.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.package_.ILocation);
+
+ /** Location cpeUri. */
+ public cpeUri: string;
+
+ /** Location version. */
+ public version?: (grafeas.v1beta1.package_.IVersion|null);
+
+ /** Location path. */
+ public path: string;
+
+ /**
+ * Creates a new Location instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Location instance
+ */
+ public static create(properties?: grafeas.v1beta1.package_.ILocation): grafeas.v1beta1.package_.Location;
+
+ /**
+ * Encodes the specified Location message. Does not implicitly {@link grafeas.v1beta1.package_.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: grafeas.v1beta1.package_.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Location message, length delimited. Does not implicitly {@link grafeas.v1beta1.package_.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: grafeas.v1beta1.package_.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): grafeas.v1beta1.package_.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)): grafeas.v1beta1.package_.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 }): grafeas.v1beta1.package_.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: grafeas.v1beta1.package_.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 Package. */
+ interface IPackage {
+
+ /** Package name */
+ name?: (string|null);
+
+ /** Package distribution */
+ distribution?: (grafeas.v1beta1.package_.IDistribution[]|null);
+ }
+
+ /** Represents a Package. */
+ class Package implements IPackage {
+
+ /**
+ * Constructs a new Package.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.package_.IPackage);
+
+ /** Package name. */
+ public name: string;
+
+ /** Package distribution. */
+ public distribution: grafeas.v1beta1.package_.IDistribution[];
+
+ /**
+ * Creates a new Package instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Package instance
+ */
+ public static create(properties?: grafeas.v1beta1.package_.IPackage): grafeas.v1beta1.package_.Package;
+
+ /**
+ * Encodes the specified Package message. Does not implicitly {@link grafeas.v1beta1.package_.Package.verify|verify} messages.
+ * @param message Package message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.package_.IPackage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Package message, length delimited. Does not implicitly {@link grafeas.v1beta1.package_.Package.verify|verify} messages.
+ * @param message Package message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.package_.IPackage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Package message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Package
+ * @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): grafeas.v1beta1.package_.Package;
+
+ /**
+ * Decodes a Package message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Package
+ * @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)): grafeas.v1beta1.package_.Package;
+
+ /**
+ * Verifies a Package 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 Package message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Package
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.package_.Package;
+
+ /**
+ * Creates a plain object from a Package message. Also converts values to other types if specified.
+ * @param message Package
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.package_.Package, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Package to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Package
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Details. */
+ interface IDetails {
+
+ /** Details installation */
+ installation?: (grafeas.v1beta1.package_.IInstallation|null);
+ }
+
+ /** Represents a Details. */
+ class Details implements IDetails {
+
+ /**
+ * Constructs a new Details.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.package_.IDetails);
+
+ /** Details installation. */
+ public installation?: (grafeas.v1beta1.package_.IInstallation|null);
+
+ /**
+ * Creates a new Details instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Details instance
+ */
+ public static create(properties?: grafeas.v1beta1.package_.IDetails): grafeas.v1beta1.package_.Details;
+
+ /**
+ * Encodes the specified Details message. Does not implicitly {@link grafeas.v1beta1.package_.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.package_.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link grafeas.v1beta1.package_.Details.verify|verify} messages.
+ * @param message Details message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.package_.IDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Details
+ * @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): grafeas.v1beta1.package_.Details;
+
+ /**
+ * Decodes a Details message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Details
+ * @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)): grafeas.v1beta1.package_.Details;
+
+ /**
+ * Verifies a Details 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 Details message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Details
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.package_.Details;
+
+ /**
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
+ * @param message Details
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.package_.Details, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Details to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Details
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Installation. */
+ interface IInstallation {
+
+ /** Installation name */
+ name?: (string|null);
+
+ /** Installation location */
+ location?: (grafeas.v1beta1.package_.ILocation[]|null);
+ }
+
+ /** Represents an Installation. */
+ class Installation implements IInstallation {
+
+ /**
+ * Constructs a new Installation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.package_.IInstallation);
+
+ /** Installation name. */
+ public name: string;
+
+ /** Installation location. */
+ public location: grafeas.v1beta1.package_.ILocation[];
+
+ /**
+ * Creates a new Installation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Installation instance
+ */
+ public static create(properties?: grafeas.v1beta1.package_.IInstallation): grafeas.v1beta1.package_.Installation;
+
+ /**
+ * Encodes the specified Installation message. Does not implicitly {@link grafeas.v1beta1.package_.Installation.verify|verify} messages.
+ * @param message Installation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.package_.IInstallation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Installation message, length delimited. Does not implicitly {@link grafeas.v1beta1.package_.Installation.verify|verify} messages.
+ * @param message Installation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.package_.IInstallation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Installation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Installation
+ * @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): grafeas.v1beta1.package_.Installation;
+
+ /**
+ * Decodes an Installation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Installation
+ * @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)): grafeas.v1beta1.package_.Installation;
+
+ /**
+ * Verifies an Installation 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 Installation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Installation
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.package_.Installation;
+
+ /**
+ * Creates a plain object from an Installation message. Also converts values to other types if specified.
+ * @param message Installation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.package_.Installation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Installation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Installation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Version. */
+ interface IVersion {
+
+ /** Version epoch */
+ epoch?: (number|null);
+
+ /** Version name */
+ name?: (string|null);
+
+ /** Version revision */
+ revision?: (string|null);
+
+ /** Version kind */
+ kind?: (grafeas.v1beta1.package_.Version.VersionKind|keyof typeof grafeas.v1beta1.package_.Version.VersionKind|null);
+ }
+
+ /** Represents a Version. */
+ class Version implements IVersion {
+
+ /**
+ * Constructs a new Version.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: grafeas.v1beta1.package_.IVersion);
+
+ /** Version epoch. */
+ public epoch: number;
+
+ /** Version name. */
+ public name: string;
+
+ /** Version revision. */
+ public revision: string;
+
+ /** Version kind. */
+ public kind: (grafeas.v1beta1.package_.Version.VersionKind|keyof typeof grafeas.v1beta1.package_.Version.VersionKind);
+
+ /**
+ * Creates a new Version instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Version instance
+ */
+ public static create(properties?: grafeas.v1beta1.package_.IVersion): grafeas.v1beta1.package_.Version;
+
+ /**
+ * Encodes the specified Version message. Does not implicitly {@link grafeas.v1beta1.package_.Version.verify|verify} messages.
+ * @param message Version message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: grafeas.v1beta1.package_.IVersion, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Version message, length delimited. Does not implicitly {@link grafeas.v1beta1.package_.Version.verify|verify} messages.
+ * @param message Version message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: grafeas.v1beta1.package_.IVersion, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Version message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Version
+ * @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): grafeas.v1beta1.package_.Version;
+
+ /**
+ * Decodes a Version message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Version
+ * @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)): grafeas.v1beta1.package_.Version;
+
+ /**
+ * Verifies a Version 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 Version message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Version
+ */
+ public static fromObject(object: { [k: string]: any }): grafeas.v1beta1.package_.Version;
+
+ /**
+ * Creates a plain object from a Version message. Also converts values to other types if specified.
+ * @param message Version
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: grafeas.v1beta1.package_.Version, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Version to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Version
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Version {
+
+ /** VersionKind enum. */
+ enum VersionKind {
+ VERSION_KIND_UNSPECIFIED = 0,
+ NORMAL = 1,
+ MINIMUM = 2,
+ MAXIMUM = 3
+ }
+ }
+ }
+ }
+}
+
+/** Namespace google. */
+export namespace google {
+
+ /** Namespace devtools. */
+ namespace devtools {
+
+ /** Namespace containeranalysis. */
+ namespace containeranalysis {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents a ContainerAnalysis */
+ class ContainerAnalysis extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ContainerAnalysis 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 ContainerAnalysis 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): ContainerAnalysis;
+
+ /**
+ * 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.devtools.containeranalysis.v1.ContainerAnalysis.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.devtools.containeranalysis.v1.ContainerAnalysis.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.devtools.containeranalysis.v1.ContainerAnalysis.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+
+ /**
+ * Calls GetVulnerabilityOccurrencesSummary.
+ * @param request GetVulnerabilityOccurrencesSummaryRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and VulnerabilityOccurrencesSummary
+ */
+ public getVulnerabilityOccurrencesSummary(request: google.devtools.containeranalysis.v1.IGetVulnerabilityOccurrencesSummaryRequest, callback: google.devtools.containeranalysis.v1.ContainerAnalysis.GetVulnerabilityOccurrencesSummaryCallback): void;
+
+ /**
+ * Calls GetVulnerabilityOccurrencesSummary.
+ * @param request GetVulnerabilityOccurrencesSummaryRequest message or plain object
+ * @returns Promise
+ */
+ public getVulnerabilityOccurrencesSummary(request: google.devtools.containeranalysis.v1.IGetVulnerabilityOccurrencesSummaryRequest): Promise;
+ }
+
+ namespace ContainerAnalysis {
+
+ /**
+ * Callback as used by {@link google.devtools.containeranalysis.v1.ContainerAnalysis|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.devtools.containeranalysis.v1.ContainerAnalysis|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.devtools.containeranalysis.v1.ContainerAnalysis|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.devtools.containeranalysis.v1.ContainerAnalysis|getVulnerabilityOccurrencesSummary}.
+ * @param error Error, if any
+ * @param [response] VulnerabilityOccurrencesSummary
+ */
+ type GetVulnerabilityOccurrencesSummaryCallback = (error: (Error|null), response?: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary) => void;
+ }
+
+ /** Properties of a GetVulnerabilityOccurrencesSummaryRequest. */
+ interface IGetVulnerabilityOccurrencesSummaryRequest {
+
+ /** GetVulnerabilityOccurrencesSummaryRequest parent */
+ parent?: (string|null);
+
+ /** GetVulnerabilityOccurrencesSummaryRequest filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a GetVulnerabilityOccurrencesSummaryRequest. */
+ class GetVulnerabilityOccurrencesSummaryRequest implements IGetVulnerabilityOccurrencesSummaryRequest {
+
+ /**
+ * Constructs a new GetVulnerabilityOccurrencesSummaryRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1.IGetVulnerabilityOccurrencesSummaryRequest);
+
+ /** GetVulnerabilityOccurrencesSummaryRequest parent. */
+ public parent: string;
+
+ /** GetVulnerabilityOccurrencesSummaryRequest filter. */
+ public filter: string;
+
+ /**
+ * Creates a new GetVulnerabilityOccurrencesSummaryRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetVulnerabilityOccurrencesSummaryRequest instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1.IGetVulnerabilityOccurrencesSummaryRequest): google.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Encodes the specified GetVulnerabilityOccurrencesSummaryRequest message. Does not implicitly {@link google.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest.verify|verify} messages.
+ * @param message GetVulnerabilityOccurrencesSummaryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1.IGetVulnerabilityOccurrencesSummaryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetVulnerabilityOccurrencesSummaryRequest message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest.verify|verify} messages.
+ * @param message GetVulnerabilityOccurrencesSummaryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1.IGetVulnerabilityOccurrencesSummaryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetVulnerabilityOccurrencesSummaryRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetVulnerabilityOccurrencesSummaryRequest
+ * @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.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Decodes a GetVulnerabilityOccurrencesSummaryRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetVulnerabilityOccurrencesSummaryRequest
+ * @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.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Verifies a GetVulnerabilityOccurrencesSummaryRequest 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 GetVulnerabilityOccurrencesSummaryRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetVulnerabilityOccurrencesSummaryRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest;
+
+ /**
+ * Creates a plain object from a GetVulnerabilityOccurrencesSummaryRequest message. Also converts values to other types if specified.
+ * @param message GetVulnerabilityOccurrencesSummaryRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1.GetVulnerabilityOccurrencesSummaryRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetVulnerabilityOccurrencesSummaryRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetVulnerabilityOccurrencesSummaryRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a VulnerabilityOccurrencesSummary. */
+ interface IVulnerabilityOccurrencesSummary {
+
+ /** VulnerabilityOccurrencesSummary counts */
+ counts?: (google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest[]|null);
+ }
+
+ /** Represents a VulnerabilityOccurrencesSummary. */
+ class VulnerabilityOccurrencesSummary implements IVulnerabilityOccurrencesSummary {
+
+ /**
+ * Constructs a new VulnerabilityOccurrencesSummary.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1.IVulnerabilityOccurrencesSummary);
+
+ /** VulnerabilityOccurrencesSummary counts. */
+ public counts: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest[];
+
+ /**
+ * Creates a new VulnerabilityOccurrencesSummary instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VulnerabilityOccurrencesSummary instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1.IVulnerabilityOccurrencesSummary): google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Encodes the specified VulnerabilityOccurrencesSummary message. Does not implicitly {@link google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.verify|verify} messages.
+ * @param message VulnerabilityOccurrencesSummary message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1.IVulnerabilityOccurrencesSummary, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VulnerabilityOccurrencesSummary message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.verify|verify} messages.
+ * @param message VulnerabilityOccurrencesSummary message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1.IVulnerabilityOccurrencesSummary, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VulnerabilityOccurrencesSummary message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VulnerabilityOccurrencesSummary
+ * @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.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Decodes a VulnerabilityOccurrencesSummary message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VulnerabilityOccurrencesSummary
+ * @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.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Verifies a VulnerabilityOccurrencesSummary 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 VulnerabilityOccurrencesSummary message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VulnerabilityOccurrencesSummary
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary;
+
+ /**
+ * Creates a plain object from a VulnerabilityOccurrencesSummary message. Also converts values to other types if specified.
+ * @param message VulnerabilityOccurrencesSummary
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VulnerabilityOccurrencesSummary to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VulnerabilityOccurrencesSummary
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace VulnerabilityOccurrencesSummary {
+
+ /** Properties of a FixableTotalByDigest. */
+ interface IFixableTotalByDigest {
+
+ /** FixableTotalByDigest resourceUri */
+ resourceUri?: (string|null);
+
+ /** FixableTotalByDigest severity */
+ severity?: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity|null);
+
+ /** FixableTotalByDigest fixableCount */
+ fixableCount?: (number|Long|string|null);
+
+ /** FixableTotalByDigest totalCount */
+ totalCount?: (number|Long|string|null);
+ }
+
+ /** Represents a FixableTotalByDigest. */
+ class FixableTotalByDigest implements IFixableTotalByDigest {
+
+ /**
+ * Constructs a new FixableTotalByDigest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest);
+
+ /** FixableTotalByDigest resourceUri. */
+ public resourceUri: string;
+
+ /** FixableTotalByDigest severity. */
+ public severity: (grafeas.v1.Severity|keyof typeof grafeas.v1.Severity);
+
+ /** FixableTotalByDigest fixableCount. */
+ public fixableCount: (number|Long|string);
+
+ /** FixableTotalByDigest totalCount. */
+ public totalCount: (number|Long|string);
+
+ /**
+ * Creates a new FixableTotalByDigest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FixableTotalByDigest instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest): google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Encodes the specified FixableTotalByDigest message. Does not implicitly {@link google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest.verify|verify} messages.
+ * @param message FixableTotalByDigest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FixableTotalByDigest message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest.verify|verify} messages.
+ * @param message FixableTotalByDigest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.IFixableTotalByDigest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FixableTotalByDigest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FixableTotalByDigest
+ * @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.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Decodes a FixableTotalByDigest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FixableTotalByDigest
+ * @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.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Verifies a FixableTotalByDigest 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 FixableTotalByDigest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FixableTotalByDigest
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest;
+
+ /**
+ * Creates a plain object from a FixableTotalByDigest message. Also converts values to other types if specified.
+ * @param message FixableTotalByDigest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1.VulnerabilityOccurrencesSummary.FixableTotalByDigest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FixableTotalByDigest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FixableTotalByDigest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Namespace v1beta1. */
+ namespace v1beta1 {
+
+ /** Represents a ContainerAnalysisV1Beta1 */
+ class ContainerAnalysisV1Beta1 extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ContainerAnalysisV1Beta1 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 ContainerAnalysisV1Beta1 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): ContainerAnalysisV1Beta1;
+
+ /**
+ * 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.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.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.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.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.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+
+ /**
+ * Calls GetScanConfig.
+ * @param request GetScanConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ScanConfig
+ */
+ public getScanConfig(request: google.devtools.containeranalysis.v1beta1.IGetScanConfigRequest, callback: google.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.GetScanConfigCallback): void;
+
+ /**
+ * Calls GetScanConfig.
+ * @param request GetScanConfigRequest message or plain object
+ * @returns Promise
+ */
+ public getScanConfig(request: google.devtools.containeranalysis.v1beta1.IGetScanConfigRequest): Promise;
+
+ /**
+ * Calls ListScanConfigs.
+ * @param request ListScanConfigsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListScanConfigsResponse
+ */
+ public listScanConfigs(request: google.devtools.containeranalysis.v1beta1.IListScanConfigsRequest, callback: google.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.ListScanConfigsCallback): void;
+
+ /**
+ * Calls ListScanConfigs.
+ * @param request ListScanConfigsRequest message or plain object
+ * @returns Promise
+ */
+ public listScanConfigs(request: google.devtools.containeranalysis.v1beta1.IListScanConfigsRequest): Promise;
+
+ /**
+ * Calls UpdateScanConfig.
+ * @param request UpdateScanConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ScanConfig
+ */
+ public updateScanConfig(request: google.devtools.containeranalysis.v1beta1.IUpdateScanConfigRequest, callback: google.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1.UpdateScanConfigCallback): void;
+
+ /**
+ * Calls UpdateScanConfig.
+ * @param request UpdateScanConfigRequest message or plain object
+ * @returns Promise
+ */
+ public updateScanConfig(request: google.devtools.containeranalysis.v1beta1.IUpdateScanConfigRequest): Promise;
+ }
+
+ namespace ContainerAnalysisV1Beta1 {
+
+ /**
+ * Callback as used by {@link google.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1|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.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1|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.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1|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.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1|getScanConfig}.
+ * @param error Error, if any
+ * @param [response] ScanConfig
+ */
+ type GetScanConfigCallback = (error: (Error|null), response?: google.devtools.containeranalysis.v1beta1.ScanConfig) => void;
+
+ /**
+ * Callback as used by {@link google.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1|listScanConfigs}.
+ * @param error Error, if any
+ * @param [response] ListScanConfigsResponse
+ */
+ type ListScanConfigsCallback = (error: (Error|null), response?: google.devtools.containeranalysis.v1beta1.ListScanConfigsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.devtools.containeranalysis.v1beta1.ContainerAnalysisV1Beta1|updateScanConfig}.
+ * @param error Error, if any
+ * @param [response] ScanConfig
+ */
+ type UpdateScanConfigCallback = (error: (Error|null), response?: google.devtools.containeranalysis.v1beta1.ScanConfig) => void;
+ }
+
+ /** Properties of a ScanConfig. */
+ interface IScanConfig {
+
+ /** ScanConfig name */
+ name?: (string|null);
+
+ /** ScanConfig description */
+ description?: (string|null);
+
+ /** ScanConfig enabled */
+ enabled?: (boolean|null);
+
+ /** ScanConfig createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** ScanConfig updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a ScanConfig. */
+ class ScanConfig implements IScanConfig {
+
+ /**
+ * Constructs a new ScanConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1beta1.IScanConfig);
+
+ /** ScanConfig name. */
+ public name: string;
+
+ /** ScanConfig description. */
+ public description: string;
+
+ /** ScanConfig enabled. */
+ public enabled: boolean;
+
+ /** ScanConfig createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** ScanConfig updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new ScanConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ScanConfig instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1beta1.IScanConfig): google.devtools.containeranalysis.v1beta1.ScanConfig;
+
+ /**
+ * Encodes the specified ScanConfig message. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.ScanConfig.verify|verify} messages.
+ * @param message ScanConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1beta1.IScanConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ScanConfig message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.ScanConfig.verify|verify} messages.
+ * @param message ScanConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1beta1.IScanConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ScanConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ScanConfig
+ * @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.devtools.containeranalysis.v1beta1.ScanConfig;
+
+ /**
+ * Decodes a ScanConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ScanConfig
+ * @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.devtools.containeranalysis.v1beta1.ScanConfig;
+
+ /**
+ * Verifies a ScanConfig 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 ScanConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ScanConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1beta1.ScanConfig;
+
+ /**
+ * Creates a plain object from a ScanConfig message. Also converts values to other types if specified.
+ * @param message ScanConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1beta1.ScanConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ScanConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ScanConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetScanConfigRequest. */
+ interface IGetScanConfigRequest {
+
+ /** GetScanConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetScanConfigRequest. */
+ class GetScanConfigRequest implements IGetScanConfigRequest {
+
+ /**
+ * Constructs a new GetScanConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1beta1.IGetScanConfigRequest);
+
+ /** GetScanConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetScanConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetScanConfigRequest instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1beta1.IGetScanConfigRequest): google.devtools.containeranalysis.v1beta1.GetScanConfigRequest;
+
+ /**
+ * Encodes the specified GetScanConfigRequest message. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.GetScanConfigRequest.verify|verify} messages.
+ * @param message GetScanConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1beta1.IGetScanConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetScanConfigRequest message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.GetScanConfigRequest.verify|verify} messages.
+ * @param message GetScanConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1beta1.IGetScanConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetScanConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetScanConfigRequest
+ * @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.devtools.containeranalysis.v1beta1.GetScanConfigRequest;
+
+ /**
+ * Decodes a GetScanConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetScanConfigRequest
+ * @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.devtools.containeranalysis.v1beta1.GetScanConfigRequest;
+
+ /**
+ * Verifies a GetScanConfigRequest 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 GetScanConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetScanConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1beta1.GetScanConfigRequest;
+
+ /**
+ * Creates a plain object from a GetScanConfigRequest message. Also converts values to other types if specified.
+ * @param message GetScanConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1beta1.GetScanConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetScanConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetScanConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListScanConfigsRequest. */
+ interface IListScanConfigsRequest {
+
+ /** ListScanConfigsRequest parent */
+ parent?: (string|null);
+
+ /** ListScanConfigsRequest filter */
+ filter?: (string|null);
+
+ /** ListScanConfigsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListScanConfigsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListScanConfigsRequest. */
+ class ListScanConfigsRequest implements IListScanConfigsRequest {
+
+ /**
+ * Constructs a new ListScanConfigsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1beta1.IListScanConfigsRequest);
+
+ /** ListScanConfigsRequest parent. */
+ public parent: string;
+
+ /** ListScanConfigsRequest filter. */
+ public filter: string;
+
+ /** ListScanConfigsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListScanConfigsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListScanConfigsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListScanConfigsRequest instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1beta1.IListScanConfigsRequest): google.devtools.containeranalysis.v1beta1.ListScanConfigsRequest;
+
+ /**
+ * Encodes the specified ListScanConfigsRequest message. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.ListScanConfigsRequest.verify|verify} messages.
+ * @param message ListScanConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1beta1.IListScanConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListScanConfigsRequest message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.ListScanConfigsRequest.verify|verify} messages.
+ * @param message ListScanConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1beta1.IListScanConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListScanConfigsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListScanConfigsRequest
+ * @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.devtools.containeranalysis.v1beta1.ListScanConfigsRequest;
+
+ /**
+ * Decodes a ListScanConfigsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListScanConfigsRequest
+ * @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.devtools.containeranalysis.v1beta1.ListScanConfigsRequest;
+
+ /**
+ * Verifies a ListScanConfigsRequest 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 ListScanConfigsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListScanConfigsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1beta1.ListScanConfigsRequest;
+
+ /**
+ * Creates a plain object from a ListScanConfigsRequest message. Also converts values to other types if specified.
+ * @param message ListScanConfigsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1beta1.ListScanConfigsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListScanConfigsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListScanConfigsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListScanConfigsResponse. */
+ interface IListScanConfigsResponse {
+
+ /** ListScanConfigsResponse scanConfigs */
+ scanConfigs?: (google.devtools.containeranalysis.v1beta1.IScanConfig[]|null);
+
+ /** ListScanConfigsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListScanConfigsResponse. */
+ class ListScanConfigsResponse implements IListScanConfigsResponse {
+
+ /**
+ * Constructs a new ListScanConfigsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1beta1.IListScanConfigsResponse);
+
+ /** ListScanConfigsResponse scanConfigs. */
+ public scanConfigs: google.devtools.containeranalysis.v1beta1.IScanConfig[];
+
+ /** ListScanConfigsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListScanConfigsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListScanConfigsResponse instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1beta1.IListScanConfigsResponse): google.devtools.containeranalysis.v1beta1.ListScanConfigsResponse;
+
+ /**
+ * Encodes the specified ListScanConfigsResponse message. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.ListScanConfigsResponse.verify|verify} messages.
+ * @param message ListScanConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1beta1.IListScanConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListScanConfigsResponse message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.ListScanConfigsResponse.verify|verify} messages.
+ * @param message ListScanConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1beta1.IListScanConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListScanConfigsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListScanConfigsResponse
+ * @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.devtools.containeranalysis.v1beta1.ListScanConfigsResponse;
+
+ /**
+ * Decodes a ListScanConfigsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListScanConfigsResponse
+ * @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.devtools.containeranalysis.v1beta1.ListScanConfigsResponse;
+
+ /**
+ * Verifies a ListScanConfigsResponse 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 ListScanConfigsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListScanConfigsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1beta1.ListScanConfigsResponse;
+
+ /**
+ * Creates a plain object from a ListScanConfigsResponse message. Also converts values to other types if specified.
+ * @param message ListScanConfigsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1beta1.ListScanConfigsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListScanConfigsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListScanConfigsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateScanConfigRequest. */
+ interface IUpdateScanConfigRequest {
+
+ /** UpdateScanConfigRequest name */
+ name?: (string|null);
+
+ /** UpdateScanConfigRequest scanConfig */
+ scanConfig?: (google.devtools.containeranalysis.v1beta1.IScanConfig|null);
+ }
+
+ /** Represents an UpdateScanConfigRequest. */
+ class UpdateScanConfigRequest implements IUpdateScanConfigRequest {
+
+ /**
+ * Constructs a new UpdateScanConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.devtools.containeranalysis.v1beta1.IUpdateScanConfigRequest);
+
+ /** UpdateScanConfigRequest name. */
+ public name: string;
+
+ /** UpdateScanConfigRequest scanConfig. */
+ public scanConfig?: (google.devtools.containeranalysis.v1beta1.IScanConfig|null);
+
+ /**
+ * Creates a new UpdateScanConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateScanConfigRequest instance
+ */
+ public static create(properties?: google.devtools.containeranalysis.v1beta1.IUpdateScanConfigRequest): google.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest;
+
+ /**
+ * Encodes the specified UpdateScanConfigRequest message. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest.verify|verify} messages.
+ * @param message UpdateScanConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.devtools.containeranalysis.v1beta1.IUpdateScanConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateScanConfigRequest message, length delimited. Does not implicitly {@link google.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest.verify|verify} messages.
+ * @param message UpdateScanConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.devtools.containeranalysis.v1beta1.IUpdateScanConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateScanConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateScanConfigRequest
+ * @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.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest;
+
+ /**
+ * Decodes an UpdateScanConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateScanConfigRequest
+ * @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.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest;
+
+ /**
+ * Verifies an UpdateScanConfigRequest 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 UpdateScanConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateScanConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest;
+
+ /**
+ * Creates a plain object from an UpdateScanConfigRequest message. Also converts values to other types if specified.
+ * @param message UpdateScanConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.devtools.containeranalysis.v1beta1.UpdateScanConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateScanConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateScanConfigRequest
+ * @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 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;
+ }
+
+ /** 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 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;
+ }
+ }
+
+ /** 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.fieldBehavior */
+ ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null);
+
+ /** FieldOptions .google.api.resourceReference */
+ ".google.api.resourceReference"?: (google.api.IResourceReference|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);
+ }
+
+ /** 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 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 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 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 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 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-devtools-containeranalysis/protos/protos.js b/packages/google-devtools-containeranalysis/protos/protos.js
new file mode 100644
index 00000000000..2599219e4e8
--- /dev/null
+++ b/packages/google-devtools-containeranalysis/protos/protos.js
@@ -0,0 +1,73567 @@
+// 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_containeranalysis_protos || ($protobuf.roots._google_cloud_containeranalysis_protos = {});
+
+ $root.grafeas = (function() {
+
+ /**
+ * Namespace grafeas.
+ * @exports grafeas
+ * @namespace
+ */
+ var grafeas = {};
+
+ grafeas.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof grafeas
+ * @namespace
+ */
+ var v1 = {};
+
+ /**
+ * Severity enum.
+ * @name grafeas.v1.Severity
+ * @enum {number}
+ * @property {number} SEVERITY_UNSPECIFIED=0 SEVERITY_UNSPECIFIED value
+ * @property {number} MINIMAL=1 MINIMAL value
+ * @property {number} LOW=2 LOW value
+ * @property {number} MEDIUM=3 MEDIUM value
+ * @property {number} HIGH=4 HIGH value
+ * @property {number} CRITICAL=5 CRITICAL value
+ */
+ v1.Severity = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "SEVERITY_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "MINIMAL"] = 1;
+ values[valuesById[2] = "LOW"] = 2;
+ values[valuesById[3] = "MEDIUM"] = 3;
+ values[valuesById[4] = "HIGH"] = 4;
+ values[valuesById[5] = "CRITICAL"] = 5;
+ return values;
+ })();
+
+ v1.AttestationNote = (function() {
+
+ /**
+ * Properties of an AttestationNote.
+ * @memberof grafeas.v1
+ * @interface IAttestationNote
+ * @property {grafeas.v1.AttestationNote.IHint|null} [hint] AttestationNote hint
+ */
+
+ /**
+ * Constructs a new AttestationNote.
+ * @memberof grafeas.v1
+ * @classdesc Represents an AttestationNote.
+ * @implements IAttestationNote
+ * @constructor
+ * @param {grafeas.v1.IAttestationNote=} [properties] Properties to set
+ */
+ function AttestationNote(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]];
+ }
+
+ /**
+ * AttestationNote hint.
+ * @member {grafeas.v1.AttestationNote.IHint|null|undefined} hint
+ * @memberof grafeas.v1.AttestationNote
+ * @instance
+ */
+ AttestationNote.prototype.hint = null;
+
+ /**
+ * Creates a new AttestationNote instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {grafeas.v1.IAttestationNote=} [properties] Properties to set
+ * @returns {grafeas.v1.AttestationNote} AttestationNote instance
+ */
+ AttestationNote.create = function create(properties) {
+ return new AttestationNote(properties);
+ };
+
+ /**
+ * Encodes the specified AttestationNote message. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {grafeas.v1.IAttestationNote} message AttestationNote message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AttestationNote.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.hint != null && Object.hasOwnProperty.call(message, "hint"))
+ $root.grafeas.v1.AttestationNote.Hint.encode(message.hint, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AttestationNote message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {grafeas.v1.IAttestationNote} message AttestationNote message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AttestationNote.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AttestationNote message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.AttestationNote} AttestationNote
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AttestationNote.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.grafeas.v1.AttestationNote();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.hint = $root.grafeas.v1.AttestationNote.Hint.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AttestationNote message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.AttestationNote} AttestationNote
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AttestationNote.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AttestationNote message.
+ * @function verify
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AttestationNote.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.hint != null && message.hasOwnProperty("hint")) {
+ var error = $root.grafeas.v1.AttestationNote.Hint.verify(message.hint);
+ if (error)
+ return "hint." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AttestationNote message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.AttestationNote} AttestationNote
+ */
+ AttestationNote.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.AttestationNote)
+ return object;
+ var message = new $root.grafeas.v1.AttestationNote();
+ if (object.hint != null) {
+ if (typeof object.hint !== "object")
+ throw TypeError(".grafeas.v1.AttestationNote.hint: object expected");
+ message.hint = $root.grafeas.v1.AttestationNote.Hint.fromObject(object.hint);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AttestationNote message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {grafeas.v1.AttestationNote} message AttestationNote
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AttestationNote.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.hint = null;
+ if (message.hint != null && message.hasOwnProperty("hint"))
+ object.hint = $root.grafeas.v1.AttestationNote.Hint.toObject(message.hint, options);
+ return object;
+ };
+
+ /**
+ * Converts this AttestationNote to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.AttestationNote
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AttestationNote.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AttestationNote
+ * @function getTypeUrl
+ * @memberof grafeas.v1.AttestationNote
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AttestationNote.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.AttestationNote";
+ };
+
+ AttestationNote.Hint = (function() {
+
+ /**
+ * Properties of a Hint.
+ * @memberof grafeas.v1.AttestationNote
+ * @interface IHint
+ * @property {string|null} [humanReadableName] Hint humanReadableName
+ */
+
+ /**
+ * Constructs a new Hint.
+ * @memberof grafeas.v1.AttestationNote
+ * @classdesc Represents a Hint.
+ * @implements IHint
+ * @constructor
+ * @param {grafeas.v1.AttestationNote.IHint=} [properties] Properties to set
+ */
+ function Hint(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]];
+ }
+
+ /**
+ * Hint humanReadableName.
+ * @member {string} humanReadableName
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @instance
+ */
+ Hint.prototype.humanReadableName = "";
+
+ /**
+ * Creates a new Hint instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {grafeas.v1.AttestationNote.IHint=} [properties] Properties to set
+ * @returns {grafeas.v1.AttestationNote.Hint} Hint instance
+ */
+ Hint.create = function create(properties) {
+ return new Hint(properties);
+ };
+
+ /**
+ * Encodes the specified Hint message. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {grafeas.v1.AttestationNote.IHint} message Hint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Hint.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.humanReadableName != null && Object.hasOwnProperty.call(message, "humanReadableName"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.humanReadableName);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Hint message, length delimited. Does not implicitly {@link grafeas.v1.AttestationNote.Hint.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {grafeas.v1.AttestationNote.IHint} message Hint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Hint.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Hint message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.AttestationNote.Hint} Hint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Hint.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.grafeas.v1.AttestationNote.Hint();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.humanReadableName = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Hint message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.AttestationNote.Hint} Hint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Hint.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Hint message.
+ * @function verify
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Hint.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.humanReadableName != null && message.hasOwnProperty("humanReadableName"))
+ if (!$util.isString(message.humanReadableName))
+ return "humanReadableName: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Hint message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.AttestationNote.Hint} Hint
+ */
+ Hint.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.AttestationNote.Hint)
+ return object;
+ var message = new $root.grafeas.v1.AttestationNote.Hint();
+ if (object.humanReadableName != null)
+ message.humanReadableName = String(object.humanReadableName);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Hint message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {grafeas.v1.AttestationNote.Hint} message Hint
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Hint.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.humanReadableName = "";
+ if (message.humanReadableName != null && message.hasOwnProperty("humanReadableName"))
+ object.humanReadableName = message.humanReadableName;
+ return object;
+ };
+
+ /**
+ * Converts this Hint to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Hint.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Hint
+ * @function getTypeUrl
+ * @memberof grafeas.v1.AttestationNote.Hint
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Hint.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.AttestationNote.Hint";
+ };
+
+ return Hint;
+ })();
+
+ return AttestationNote;
+ })();
+
+ v1.Jwt = (function() {
+
+ /**
+ * Properties of a Jwt.
+ * @memberof grafeas.v1
+ * @interface IJwt
+ * @property {string|null} [compactJwt] Jwt compactJwt
+ */
+
+ /**
+ * Constructs a new Jwt.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Jwt.
+ * @implements IJwt
+ * @constructor
+ * @param {grafeas.v1.IJwt=} [properties] Properties to set
+ */
+ function Jwt(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]];
+ }
+
+ /**
+ * Jwt compactJwt.
+ * @member {string} compactJwt
+ * @memberof grafeas.v1.Jwt
+ * @instance
+ */
+ Jwt.prototype.compactJwt = "";
+
+ /**
+ * Creates a new Jwt instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {grafeas.v1.IJwt=} [properties] Properties to set
+ * @returns {grafeas.v1.Jwt} Jwt instance
+ */
+ Jwt.create = function create(properties) {
+ return new Jwt(properties);
+ };
+
+ /**
+ * Encodes the specified Jwt message. Does not implicitly {@link grafeas.v1.Jwt.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {grafeas.v1.IJwt} message Jwt message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Jwt.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.compactJwt != null && Object.hasOwnProperty.call(message, "compactJwt"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.compactJwt);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Jwt message, length delimited. Does not implicitly {@link grafeas.v1.Jwt.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {grafeas.v1.IJwt} message Jwt message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Jwt.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Jwt message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Jwt} Jwt
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Jwt.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.grafeas.v1.Jwt();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.compactJwt = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Jwt message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Jwt} Jwt
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Jwt.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Jwt message.
+ * @function verify
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Jwt.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.compactJwt != null && message.hasOwnProperty("compactJwt"))
+ if (!$util.isString(message.compactJwt))
+ return "compactJwt: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Jwt message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Jwt} Jwt
+ */
+ Jwt.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Jwt)
+ return object;
+ var message = new $root.grafeas.v1.Jwt();
+ if (object.compactJwt != null)
+ message.compactJwt = String(object.compactJwt);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Jwt message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {grafeas.v1.Jwt} message Jwt
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Jwt.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.compactJwt = "";
+ if (message.compactJwt != null && message.hasOwnProperty("compactJwt"))
+ object.compactJwt = message.compactJwt;
+ return object;
+ };
+
+ /**
+ * Converts this Jwt to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Jwt
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Jwt.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Jwt
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Jwt
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Jwt.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Jwt";
+ };
+
+ return Jwt;
+ })();
+
+ v1.AttestationOccurrence = (function() {
+
+ /**
+ * Properties of an AttestationOccurrence.
+ * @memberof grafeas.v1
+ * @interface IAttestationOccurrence
+ * @property {Uint8Array|null} [serializedPayload] AttestationOccurrence serializedPayload
+ * @property {Array.|null} [signatures] AttestationOccurrence signatures
+ * @property {Array.|null} [jwts] AttestationOccurrence jwts
+ */
+
+ /**
+ * Constructs a new AttestationOccurrence.
+ * @memberof grafeas.v1
+ * @classdesc Represents an AttestationOccurrence.
+ * @implements IAttestationOccurrence
+ * @constructor
+ * @param {grafeas.v1.IAttestationOccurrence=} [properties] Properties to set
+ */
+ function AttestationOccurrence(properties) {
+ this.signatures = [];
+ this.jwts = [];
+ 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]];
+ }
+
+ /**
+ * AttestationOccurrence serializedPayload.
+ * @member {Uint8Array} serializedPayload
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @instance
+ */
+ AttestationOccurrence.prototype.serializedPayload = $util.newBuffer([]);
+
+ /**
+ * AttestationOccurrence signatures.
+ * @member {Array.} signatures
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @instance
+ */
+ AttestationOccurrence.prototype.signatures = $util.emptyArray;
+
+ /**
+ * AttestationOccurrence jwts.
+ * @member {Array.} jwts
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @instance
+ */
+ AttestationOccurrence.prototype.jwts = $util.emptyArray;
+
+ /**
+ * Creates a new AttestationOccurrence instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {grafeas.v1.IAttestationOccurrence=} [properties] Properties to set
+ * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence instance
+ */
+ AttestationOccurrence.create = function create(properties) {
+ return new AttestationOccurrence(properties);
+ };
+
+ /**
+ * Encodes the specified AttestationOccurrence message. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {grafeas.v1.IAttestationOccurrence} message AttestationOccurrence message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AttestationOccurrence.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.serializedPayload != null && Object.hasOwnProperty.call(message, "serializedPayload"))
+ writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.serializedPayload);
+ if (message.signatures != null && message.signatures.length)
+ for (var i = 0; i < message.signatures.length; ++i)
+ $root.grafeas.v1.Signature.encode(message.signatures[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.jwts != null && message.jwts.length)
+ for (var i = 0; i < message.jwts.length; ++i)
+ $root.grafeas.v1.Jwt.encode(message.jwts[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AttestationOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.AttestationOccurrence.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {grafeas.v1.IAttestationOccurrence} message AttestationOccurrence message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AttestationOccurrence.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AttestationOccurrence message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AttestationOccurrence.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.grafeas.v1.AttestationOccurrence();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.serializedPayload = reader.bytes();
+ break;
+ }
+ case 2: {
+ if (!(message.signatures && message.signatures.length))
+ message.signatures = [];
+ message.signatures.push($root.grafeas.v1.Signature.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ if (!(message.jwts && message.jwts.length))
+ message.jwts = [];
+ message.jwts.push($root.grafeas.v1.Jwt.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AttestationOccurrence message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AttestationOccurrence.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AttestationOccurrence message.
+ * @function verify
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AttestationOccurrence.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.serializedPayload != null && message.hasOwnProperty("serializedPayload"))
+ if (!(message.serializedPayload && typeof message.serializedPayload.length === "number" || $util.isString(message.serializedPayload)))
+ return "serializedPayload: buffer expected";
+ if (message.signatures != null && message.hasOwnProperty("signatures")) {
+ if (!Array.isArray(message.signatures))
+ return "signatures: array expected";
+ for (var i = 0; i < message.signatures.length; ++i) {
+ var error = $root.grafeas.v1.Signature.verify(message.signatures[i]);
+ if (error)
+ return "signatures." + error;
+ }
+ }
+ if (message.jwts != null && message.hasOwnProperty("jwts")) {
+ if (!Array.isArray(message.jwts))
+ return "jwts: array expected";
+ for (var i = 0; i < message.jwts.length; ++i) {
+ var error = $root.grafeas.v1.Jwt.verify(message.jwts[i]);
+ if (error)
+ return "jwts." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AttestationOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.AttestationOccurrence} AttestationOccurrence
+ */
+ AttestationOccurrence.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.AttestationOccurrence)
+ return object;
+ var message = new $root.grafeas.v1.AttestationOccurrence();
+ if (object.serializedPayload != null)
+ if (typeof object.serializedPayload === "string")
+ $util.base64.decode(object.serializedPayload, message.serializedPayload = $util.newBuffer($util.base64.length(object.serializedPayload)), 0);
+ else if (object.serializedPayload.length >= 0)
+ message.serializedPayload = object.serializedPayload;
+ if (object.signatures) {
+ if (!Array.isArray(object.signatures))
+ throw TypeError(".grafeas.v1.AttestationOccurrence.signatures: array expected");
+ message.signatures = [];
+ for (var i = 0; i < object.signatures.length; ++i) {
+ if (typeof object.signatures[i] !== "object")
+ throw TypeError(".grafeas.v1.AttestationOccurrence.signatures: object expected");
+ message.signatures[i] = $root.grafeas.v1.Signature.fromObject(object.signatures[i]);
+ }
+ }
+ if (object.jwts) {
+ if (!Array.isArray(object.jwts))
+ throw TypeError(".grafeas.v1.AttestationOccurrence.jwts: array expected");
+ message.jwts = [];
+ for (var i = 0; i < object.jwts.length; ++i) {
+ if (typeof object.jwts[i] !== "object")
+ throw TypeError(".grafeas.v1.AttestationOccurrence.jwts: object expected");
+ message.jwts[i] = $root.grafeas.v1.Jwt.fromObject(object.jwts[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AttestationOccurrence message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {grafeas.v1.AttestationOccurrence} message AttestationOccurrence
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AttestationOccurrence.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.signatures = [];
+ object.jwts = [];
+ }
+ if (options.defaults)
+ if (options.bytes === String)
+ object.serializedPayload = "";
+ else {
+ object.serializedPayload = [];
+ if (options.bytes !== Array)
+ object.serializedPayload = $util.newBuffer(object.serializedPayload);
+ }
+ if (message.serializedPayload != null && message.hasOwnProperty("serializedPayload"))
+ object.serializedPayload = options.bytes === String ? $util.base64.encode(message.serializedPayload, 0, message.serializedPayload.length) : options.bytes === Array ? Array.prototype.slice.call(message.serializedPayload) : message.serializedPayload;
+ if (message.signatures && message.signatures.length) {
+ object.signatures = [];
+ for (var j = 0; j < message.signatures.length; ++j)
+ object.signatures[j] = $root.grafeas.v1.Signature.toObject(message.signatures[j], options);
+ }
+ if (message.jwts && message.jwts.length) {
+ object.jwts = [];
+ for (var j = 0; j < message.jwts.length; ++j)
+ object.jwts[j] = $root.grafeas.v1.Jwt.toObject(message.jwts[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this AttestationOccurrence to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AttestationOccurrence.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AttestationOccurrence
+ * @function getTypeUrl
+ * @memberof grafeas.v1.AttestationOccurrence
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AttestationOccurrence.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.AttestationOccurrence";
+ };
+
+ return AttestationOccurrence;
+ })();
+
+ /**
+ * NoteKind enum.
+ * @name grafeas.v1.NoteKind
+ * @enum {number}
+ * @property {number} NOTE_KIND_UNSPECIFIED=0 NOTE_KIND_UNSPECIFIED value
+ * @property {number} VULNERABILITY=1 VULNERABILITY value
+ * @property {number} BUILD=2 BUILD value
+ * @property {number} IMAGE=3 IMAGE value
+ * @property {number} PACKAGE=4 PACKAGE value
+ * @property {number} DEPLOYMENT=5 DEPLOYMENT value
+ * @property {number} DISCOVERY=6 DISCOVERY value
+ * @property {number} ATTESTATION=7 ATTESTATION value
+ * @property {number} UPGRADE=8 UPGRADE value
+ * @property {number} COMPLIANCE=9 COMPLIANCE value
+ * @property {number} DSSE_ATTESTATION=10 DSSE_ATTESTATION value
+ */
+ v1.NoteKind = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "NOTE_KIND_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "VULNERABILITY"] = 1;
+ values[valuesById[2] = "BUILD"] = 2;
+ values[valuesById[3] = "IMAGE"] = 3;
+ values[valuesById[4] = "PACKAGE"] = 4;
+ values[valuesById[5] = "DEPLOYMENT"] = 5;
+ values[valuesById[6] = "DISCOVERY"] = 6;
+ values[valuesById[7] = "ATTESTATION"] = 7;
+ values[valuesById[8] = "UPGRADE"] = 8;
+ values[valuesById[9] = "COMPLIANCE"] = 9;
+ values[valuesById[10] = "DSSE_ATTESTATION"] = 10;
+ return values;
+ })();
+
+ v1.RelatedUrl = (function() {
+
+ /**
+ * Properties of a RelatedUrl.
+ * @memberof grafeas.v1
+ * @interface IRelatedUrl
+ * @property {string|null} [url] RelatedUrl url
+ * @property {string|null} [label] RelatedUrl label
+ */
+
+ /**
+ * Constructs a new RelatedUrl.
+ * @memberof grafeas.v1
+ * @classdesc Represents a RelatedUrl.
+ * @implements IRelatedUrl
+ * @constructor
+ * @param {grafeas.v1.IRelatedUrl=} [properties] Properties to set
+ */
+ function RelatedUrl(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]];
+ }
+
+ /**
+ * RelatedUrl url.
+ * @member {string} url
+ * @memberof grafeas.v1.RelatedUrl
+ * @instance
+ */
+ RelatedUrl.prototype.url = "";
+
+ /**
+ * RelatedUrl label.
+ * @member {string} label
+ * @memberof grafeas.v1.RelatedUrl
+ * @instance
+ */
+ RelatedUrl.prototype.label = "";
+
+ /**
+ * Creates a new RelatedUrl instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {grafeas.v1.IRelatedUrl=} [properties] Properties to set
+ * @returns {grafeas.v1.RelatedUrl} RelatedUrl instance
+ */
+ RelatedUrl.create = function create(properties) {
+ return new RelatedUrl(properties);
+ };
+
+ /**
+ * Encodes the specified RelatedUrl message. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {grafeas.v1.IRelatedUrl} message RelatedUrl message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ RelatedUrl.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.url != null && Object.hasOwnProperty.call(message, "url"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.url);
+ if (message.label != null && Object.hasOwnProperty.call(message, "label"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.label);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified RelatedUrl message, length delimited. Does not implicitly {@link grafeas.v1.RelatedUrl.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {grafeas.v1.IRelatedUrl} message RelatedUrl message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ RelatedUrl.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a RelatedUrl message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.RelatedUrl} RelatedUrl
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ RelatedUrl.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.grafeas.v1.RelatedUrl();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.url = reader.string();
+ break;
+ }
+ case 2: {
+ message.label = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a RelatedUrl message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.RelatedUrl} RelatedUrl
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ RelatedUrl.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a RelatedUrl message.
+ * @function verify
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ RelatedUrl.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.url != null && message.hasOwnProperty("url"))
+ if (!$util.isString(message.url))
+ return "url: string expected";
+ if (message.label != null && message.hasOwnProperty("label"))
+ if (!$util.isString(message.label))
+ return "label: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a RelatedUrl message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.RelatedUrl} RelatedUrl
+ */
+ RelatedUrl.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.RelatedUrl)
+ return object;
+ var message = new $root.grafeas.v1.RelatedUrl();
+ if (object.url != null)
+ message.url = String(object.url);
+ if (object.label != null)
+ message.label = String(object.label);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a RelatedUrl message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {grafeas.v1.RelatedUrl} message RelatedUrl
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ RelatedUrl.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.url = "";
+ object.label = "";
+ }
+ if (message.url != null && message.hasOwnProperty("url"))
+ object.url = message.url;
+ if (message.label != null && message.hasOwnProperty("label"))
+ object.label = message.label;
+ return object;
+ };
+
+ /**
+ * Converts this RelatedUrl to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.RelatedUrl
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ RelatedUrl.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for RelatedUrl
+ * @function getTypeUrl
+ * @memberof grafeas.v1.RelatedUrl
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ RelatedUrl.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.RelatedUrl";
+ };
+
+ return RelatedUrl;
+ })();
+
+ v1.Signature = (function() {
+
+ /**
+ * Properties of a Signature.
+ * @memberof grafeas.v1
+ * @interface ISignature
+ * @property {Uint8Array|null} [signature] Signature signature
+ * @property {string|null} [publicKeyId] Signature publicKeyId
+ */
+
+ /**
+ * Constructs a new Signature.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Signature.
+ * @implements ISignature
+ * @constructor
+ * @param {grafeas.v1.ISignature=} [properties] Properties to set
+ */
+ function Signature(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]];
+ }
+
+ /**
+ * Signature signature.
+ * @member {Uint8Array} signature
+ * @memberof grafeas.v1.Signature
+ * @instance
+ */
+ Signature.prototype.signature = $util.newBuffer([]);
+
+ /**
+ * Signature publicKeyId.
+ * @member {string} publicKeyId
+ * @memberof grafeas.v1.Signature
+ * @instance
+ */
+ Signature.prototype.publicKeyId = "";
+
+ /**
+ * Creates a new Signature instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {grafeas.v1.ISignature=} [properties] Properties to set
+ * @returns {grafeas.v1.Signature} Signature instance
+ */
+ Signature.create = function create(properties) {
+ return new Signature(properties);
+ };
+
+ /**
+ * Encodes the specified Signature message. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {grafeas.v1.ISignature} message Signature message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Signature.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.signature != null && Object.hasOwnProperty.call(message, "signature"))
+ writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.signature);
+ if (message.publicKeyId != null && Object.hasOwnProperty.call(message, "publicKeyId"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.publicKeyId);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Signature message, length delimited. Does not implicitly {@link grafeas.v1.Signature.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {grafeas.v1.ISignature} message Signature message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Signature.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Signature message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Signature} Signature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Signature.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.grafeas.v1.Signature();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.signature = reader.bytes();
+ break;
+ }
+ case 2: {
+ message.publicKeyId = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Signature message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Signature} Signature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Signature.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Signature message.
+ * @function verify
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Signature.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.signature != null && message.hasOwnProperty("signature"))
+ if (!(message.signature && typeof message.signature.length === "number" || $util.isString(message.signature)))
+ return "signature: buffer expected";
+ if (message.publicKeyId != null && message.hasOwnProperty("publicKeyId"))
+ if (!$util.isString(message.publicKeyId))
+ return "publicKeyId: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Signature message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Signature} Signature
+ */
+ Signature.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Signature)
+ return object;
+ var message = new $root.grafeas.v1.Signature();
+ if (object.signature != null)
+ if (typeof object.signature === "string")
+ $util.base64.decode(object.signature, message.signature = $util.newBuffer($util.base64.length(object.signature)), 0);
+ else if (object.signature.length >= 0)
+ message.signature = object.signature;
+ if (object.publicKeyId != null)
+ message.publicKeyId = String(object.publicKeyId);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Signature message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {grafeas.v1.Signature} message Signature
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Signature.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ if (options.bytes === String)
+ object.signature = "";
+ else {
+ object.signature = [];
+ if (options.bytes !== Array)
+ object.signature = $util.newBuffer(object.signature);
+ }
+ object.publicKeyId = "";
+ }
+ if (message.signature != null && message.hasOwnProperty("signature"))
+ object.signature = options.bytes === String ? $util.base64.encode(message.signature, 0, message.signature.length) : options.bytes === Array ? Array.prototype.slice.call(message.signature) : message.signature;
+ if (message.publicKeyId != null && message.hasOwnProperty("publicKeyId"))
+ object.publicKeyId = message.publicKeyId;
+ return object;
+ };
+
+ /**
+ * Converts this Signature to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Signature
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Signature.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Signature
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Signature
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Signature.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Signature";
+ };
+
+ return Signature;
+ })();
+
+ v1.Envelope = (function() {
+
+ /**
+ * Properties of an Envelope.
+ * @memberof grafeas.v1
+ * @interface IEnvelope
+ * @property {Uint8Array|null} [payload] Envelope payload
+ * @property {string|null} [payloadType] Envelope payloadType
+ * @property {Array.|null} [signatures] Envelope signatures
+ */
+
+ /**
+ * Constructs a new Envelope.
+ * @memberof grafeas.v1
+ * @classdesc Represents an Envelope.
+ * @implements IEnvelope
+ * @constructor
+ * @param {grafeas.v1.IEnvelope=} [properties] Properties to set
+ */
+ function Envelope(properties) {
+ this.signatures = [];
+ 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]];
+ }
+
+ /**
+ * Envelope payload.
+ * @member {Uint8Array} payload
+ * @memberof grafeas.v1.Envelope
+ * @instance
+ */
+ Envelope.prototype.payload = $util.newBuffer([]);
+
+ /**
+ * Envelope payloadType.
+ * @member {string} payloadType
+ * @memberof grafeas.v1.Envelope
+ * @instance
+ */
+ Envelope.prototype.payloadType = "";
+
+ /**
+ * Envelope signatures.
+ * @member {Array.} signatures
+ * @memberof grafeas.v1.Envelope
+ * @instance
+ */
+ Envelope.prototype.signatures = $util.emptyArray;
+
+ /**
+ * Creates a new Envelope instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {grafeas.v1.IEnvelope=} [properties] Properties to set
+ * @returns {grafeas.v1.Envelope} Envelope instance
+ */
+ Envelope.create = function create(properties) {
+ return new Envelope(properties);
+ };
+
+ /**
+ * Encodes the specified Envelope message. Does not implicitly {@link grafeas.v1.Envelope.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {grafeas.v1.IEnvelope} message Envelope message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Envelope.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.payload != null && Object.hasOwnProperty.call(message, "payload"))
+ writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.payload);
+ if (message.payloadType != null && Object.hasOwnProperty.call(message, "payloadType"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.payloadType);
+ if (message.signatures != null && message.signatures.length)
+ for (var i = 0; i < message.signatures.length; ++i)
+ $root.grafeas.v1.EnvelopeSignature.encode(message.signatures[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Envelope message, length delimited. Does not implicitly {@link grafeas.v1.Envelope.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {grafeas.v1.IEnvelope} message Envelope message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Envelope.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an Envelope message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Envelope} Envelope
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Envelope.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.grafeas.v1.Envelope();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.payload = reader.bytes();
+ break;
+ }
+ case 2: {
+ message.payloadType = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.signatures && message.signatures.length))
+ message.signatures = [];
+ message.signatures.push($root.grafeas.v1.EnvelopeSignature.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an Envelope message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Envelope} Envelope
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Envelope.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an Envelope message.
+ * @function verify
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Envelope.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.payload != null && message.hasOwnProperty("payload"))
+ if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload)))
+ return "payload: buffer expected";
+ if (message.payloadType != null && message.hasOwnProperty("payloadType"))
+ if (!$util.isString(message.payloadType))
+ return "payloadType: string expected";
+ if (message.signatures != null && message.hasOwnProperty("signatures")) {
+ if (!Array.isArray(message.signatures))
+ return "signatures: array expected";
+ for (var i = 0; i < message.signatures.length; ++i) {
+ var error = $root.grafeas.v1.EnvelopeSignature.verify(message.signatures[i]);
+ if (error)
+ return "signatures." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an Envelope message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Envelope} Envelope
+ */
+ Envelope.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Envelope)
+ return object;
+ var message = new $root.grafeas.v1.Envelope();
+ if (object.payload != null)
+ if (typeof object.payload === "string")
+ $util.base64.decode(object.payload, message.payload = $util.newBuffer($util.base64.length(object.payload)), 0);
+ else if (object.payload.length >= 0)
+ message.payload = object.payload;
+ if (object.payloadType != null)
+ message.payloadType = String(object.payloadType);
+ if (object.signatures) {
+ if (!Array.isArray(object.signatures))
+ throw TypeError(".grafeas.v1.Envelope.signatures: array expected");
+ message.signatures = [];
+ for (var i = 0; i < object.signatures.length; ++i) {
+ if (typeof object.signatures[i] !== "object")
+ throw TypeError(".grafeas.v1.Envelope.signatures: object expected");
+ message.signatures[i] = $root.grafeas.v1.EnvelopeSignature.fromObject(object.signatures[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an Envelope message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {grafeas.v1.Envelope} message Envelope
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Envelope.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.signatures = [];
+ if (options.defaults) {
+ if (options.bytes === String)
+ object.payload = "";
+ else {
+ object.payload = [];
+ if (options.bytes !== Array)
+ object.payload = $util.newBuffer(object.payload);
+ }
+ object.payloadType = "";
+ }
+ if (message.payload != null && message.hasOwnProperty("payload"))
+ object.payload = options.bytes === String ? $util.base64.encode(message.payload, 0, message.payload.length) : options.bytes === Array ? Array.prototype.slice.call(message.payload) : message.payload;
+ if (message.payloadType != null && message.hasOwnProperty("payloadType"))
+ object.payloadType = message.payloadType;
+ if (message.signatures && message.signatures.length) {
+ object.signatures = [];
+ for (var j = 0; j < message.signatures.length; ++j)
+ object.signatures[j] = $root.grafeas.v1.EnvelopeSignature.toObject(message.signatures[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Envelope to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Envelope
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Envelope.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Envelope
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Envelope
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Envelope.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Envelope";
+ };
+
+ return Envelope;
+ })();
+
+ v1.EnvelopeSignature = (function() {
+
+ /**
+ * Properties of an EnvelopeSignature.
+ * @memberof grafeas.v1
+ * @interface IEnvelopeSignature
+ * @property {Uint8Array|null} [sig] EnvelopeSignature sig
+ * @property {string|null} [keyid] EnvelopeSignature keyid
+ */
+
+ /**
+ * Constructs a new EnvelopeSignature.
+ * @memberof grafeas.v1
+ * @classdesc Represents an EnvelopeSignature.
+ * @implements IEnvelopeSignature
+ * @constructor
+ * @param {grafeas.v1.IEnvelopeSignature=} [properties] Properties to set
+ */
+ function EnvelopeSignature(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]];
+ }
+
+ /**
+ * EnvelopeSignature sig.
+ * @member {Uint8Array} sig
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @instance
+ */
+ EnvelopeSignature.prototype.sig = $util.newBuffer([]);
+
+ /**
+ * EnvelopeSignature keyid.
+ * @member {string} keyid
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @instance
+ */
+ EnvelopeSignature.prototype.keyid = "";
+
+ /**
+ * Creates a new EnvelopeSignature instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {grafeas.v1.IEnvelopeSignature=} [properties] Properties to set
+ * @returns {grafeas.v1.EnvelopeSignature} EnvelopeSignature instance
+ */
+ EnvelopeSignature.create = function create(properties) {
+ return new EnvelopeSignature(properties);
+ };
+
+ /**
+ * Encodes the specified EnvelopeSignature message. Does not implicitly {@link grafeas.v1.EnvelopeSignature.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {grafeas.v1.IEnvelopeSignature} message EnvelopeSignature message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ EnvelopeSignature.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.sig != null && Object.hasOwnProperty.call(message, "sig"))
+ writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.sig);
+ if (message.keyid != null && Object.hasOwnProperty.call(message, "keyid"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.keyid);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified EnvelopeSignature message, length delimited. Does not implicitly {@link grafeas.v1.EnvelopeSignature.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {grafeas.v1.IEnvelopeSignature} message EnvelopeSignature message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ EnvelopeSignature.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an EnvelopeSignature message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.EnvelopeSignature} EnvelopeSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ EnvelopeSignature.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.grafeas.v1.EnvelopeSignature();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.sig = reader.bytes();
+ break;
+ }
+ case 2: {
+ message.keyid = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an EnvelopeSignature message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.EnvelopeSignature} EnvelopeSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ EnvelopeSignature.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an EnvelopeSignature message.
+ * @function verify
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ EnvelopeSignature.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.sig != null && message.hasOwnProperty("sig"))
+ if (!(message.sig && typeof message.sig.length === "number" || $util.isString(message.sig)))
+ return "sig: buffer expected";
+ if (message.keyid != null && message.hasOwnProperty("keyid"))
+ if (!$util.isString(message.keyid))
+ return "keyid: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an EnvelopeSignature message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.EnvelopeSignature} EnvelopeSignature
+ */
+ EnvelopeSignature.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.EnvelopeSignature)
+ return object;
+ var message = new $root.grafeas.v1.EnvelopeSignature();
+ if (object.sig != null)
+ if (typeof object.sig === "string")
+ $util.base64.decode(object.sig, message.sig = $util.newBuffer($util.base64.length(object.sig)), 0);
+ else if (object.sig.length >= 0)
+ message.sig = object.sig;
+ if (object.keyid != null)
+ message.keyid = String(object.keyid);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an EnvelopeSignature message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {grafeas.v1.EnvelopeSignature} message EnvelopeSignature
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ EnvelopeSignature.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ if (options.bytes === String)
+ object.sig = "";
+ else {
+ object.sig = [];
+ if (options.bytes !== Array)
+ object.sig = $util.newBuffer(object.sig);
+ }
+ object.keyid = "";
+ }
+ if (message.sig != null && message.hasOwnProperty("sig"))
+ object.sig = options.bytes === String ? $util.base64.encode(message.sig, 0, message.sig.length) : options.bytes === Array ? Array.prototype.slice.call(message.sig) : message.sig;
+ if (message.keyid != null && message.hasOwnProperty("keyid"))
+ object.keyid = message.keyid;
+ return object;
+ };
+
+ /**
+ * Converts this EnvelopeSignature to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ EnvelopeSignature.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for EnvelopeSignature
+ * @function getTypeUrl
+ * @memberof grafeas.v1.EnvelopeSignature
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ EnvelopeSignature.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.EnvelopeSignature";
+ };
+
+ return EnvelopeSignature;
+ })();
+
+ v1.FileLocation = (function() {
+
+ /**
+ * Properties of a FileLocation.
+ * @memberof grafeas.v1
+ * @interface IFileLocation
+ * @property {string|null} [filePath] FileLocation filePath
+ */
+
+ /**
+ * Constructs a new FileLocation.
+ * @memberof grafeas.v1
+ * @classdesc Represents a FileLocation.
+ * @implements IFileLocation
+ * @constructor
+ * @param {grafeas.v1.IFileLocation=} [properties] Properties to set
+ */
+ function FileLocation(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]];
+ }
+
+ /**
+ * FileLocation filePath.
+ * @member {string} filePath
+ * @memberof grafeas.v1.FileLocation
+ * @instance
+ */
+ FileLocation.prototype.filePath = "";
+
+ /**
+ * Creates a new FileLocation instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {grafeas.v1.IFileLocation=} [properties] Properties to set
+ * @returns {grafeas.v1.FileLocation} FileLocation instance
+ */
+ FileLocation.create = function create(properties) {
+ return new FileLocation(properties);
+ };
+
+ /**
+ * Encodes the specified FileLocation message. Does not implicitly {@link grafeas.v1.FileLocation.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {grafeas.v1.IFileLocation} message FileLocation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ FileLocation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.filePath != null && Object.hasOwnProperty.call(message, "filePath"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.filePath);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified FileLocation message, length delimited. Does not implicitly {@link grafeas.v1.FileLocation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {grafeas.v1.IFileLocation} message FileLocation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ FileLocation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a FileLocation message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.FileLocation} FileLocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ FileLocation.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.grafeas.v1.FileLocation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.filePath = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a FileLocation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.FileLocation} FileLocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ FileLocation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a FileLocation message.
+ * @function verify
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ FileLocation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.filePath != null && message.hasOwnProperty("filePath"))
+ if (!$util.isString(message.filePath))
+ return "filePath: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a FileLocation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.FileLocation} FileLocation
+ */
+ FileLocation.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.FileLocation)
+ return object;
+ var message = new $root.grafeas.v1.FileLocation();
+ if (object.filePath != null)
+ message.filePath = String(object.filePath);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a FileLocation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {grafeas.v1.FileLocation} message FileLocation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ FileLocation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.filePath = "";
+ if (message.filePath != null && message.hasOwnProperty("filePath"))
+ object.filePath = message.filePath;
+ return object;
+ };
+
+ /**
+ * Converts this FileLocation to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.FileLocation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ FileLocation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for FileLocation
+ * @function getTypeUrl
+ * @memberof grafeas.v1.FileLocation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ FileLocation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.FileLocation";
+ };
+
+ return FileLocation;
+ })();
+
+ v1.License = (function() {
+
+ /**
+ * Properties of a License.
+ * @memberof grafeas.v1
+ * @interface ILicense
+ * @property {string|null} [expression] License expression
+ * @property {string|null} [comments] License comments
+ */
+
+ /**
+ * Constructs a new License.
+ * @memberof grafeas.v1
+ * @classdesc Represents a License.
+ * @implements ILicense
+ * @constructor
+ * @param {grafeas.v1.ILicense=} [properties] Properties to set
+ */
+ function License(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]];
+ }
+
+ /**
+ * License expression.
+ * @member {string} expression
+ * @memberof grafeas.v1.License
+ * @instance
+ */
+ License.prototype.expression = "";
+
+ /**
+ * License comments.
+ * @member {string} comments
+ * @memberof grafeas.v1.License
+ * @instance
+ */
+ License.prototype.comments = "";
+
+ /**
+ * Creates a new License instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {grafeas.v1.ILicense=} [properties] Properties to set
+ * @returns {grafeas.v1.License} License instance
+ */
+ License.create = function create(properties) {
+ return new License(properties);
+ };
+
+ /**
+ * Encodes the specified License message. Does not implicitly {@link grafeas.v1.License.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {grafeas.v1.ILicense} message License message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ License.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.expression != null && Object.hasOwnProperty.call(message, "expression"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.expression);
+ if (message.comments != null && Object.hasOwnProperty.call(message, "comments"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.comments);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified License message, length delimited. Does not implicitly {@link grafeas.v1.License.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {grafeas.v1.ILicense} message License message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ License.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a License message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.License} License
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ License.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.grafeas.v1.License();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.expression = reader.string();
+ break;
+ }
+ case 2: {
+ message.comments = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a License message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.License} License
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ License.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a License message.
+ * @function verify
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ License.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.expression != null && message.hasOwnProperty("expression"))
+ if (!$util.isString(message.expression))
+ return "expression: string expected";
+ if (message.comments != null && message.hasOwnProperty("comments"))
+ if (!$util.isString(message.comments))
+ return "comments: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a License message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.License} License
+ */
+ License.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.License)
+ return object;
+ var message = new $root.grafeas.v1.License();
+ if (object.expression != null)
+ message.expression = String(object.expression);
+ if (object.comments != null)
+ message.comments = String(object.comments);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a License message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {grafeas.v1.License} message License
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ License.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.expression = "";
+ object.comments = "";
+ }
+ if (message.expression != null && message.hasOwnProperty("expression"))
+ object.expression = message.expression;
+ if (message.comments != null && message.hasOwnProperty("comments"))
+ object.comments = message.comments;
+ return object;
+ };
+
+ /**
+ * Converts this License to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.License
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ License.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for License
+ * @function getTypeUrl
+ * @memberof grafeas.v1.License
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ License.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.License";
+ };
+
+ return License;
+ })();
+
+ v1.Digest = (function() {
+
+ /**
+ * Properties of a Digest.
+ * @memberof grafeas.v1
+ * @interface IDigest
+ * @property {string|null} [algo] Digest algo
+ * @property {Uint8Array|null} [digestBytes] Digest digestBytes
+ */
+
+ /**
+ * Constructs a new Digest.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Digest.
+ * @implements IDigest
+ * @constructor
+ * @param {grafeas.v1.IDigest=} [properties] Properties to set
+ */
+ function Digest(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]];
+ }
+
+ /**
+ * Digest algo.
+ * @member {string} algo
+ * @memberof grafeas.v1.Digest
+ * @instance
+ */
+ Digest.prototype.algo = "";
+
+ /**
+ * Digest digestBytes.
+ * @member {Uint8Array} digestBytes
+ * @memberof grafeas.v1.Digest
+ * @instance
+ */
+ Digest.prototype.digestBytes = $util.newBuffer([]);
+
+ /**
+ * Creates a new Digest instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {grafeas.v1.IDigest=} [properties] Properties to set
+ * @returns {grafeas.v1.Digest} Digest instance
+ */
+ Digest.create = function create(properties) {
+ return new Digest(properties);
+ };
+
+ /**
+ * Encodes the specified Digest message. Does not implicitly {@link grafeas.v1.Digest.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {grafeas.v1.IDigest} message Digest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Digest.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.algo != null && Object.hasOwnProperty.call(message, "algo"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.algo);
+ if (message.digestBytes != null && Object.hasOwnProperty.call(message, "digestBytes"))
+ writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.digestBytes);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Digest message, length delimited. Does not implicitly {@link grafeas.v1.Digest.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {grafeas.v1.IDigest} message Digest message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Digest.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Digest message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Digest} Digest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Digest.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.grafeas.v1.Digest();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.algo = reader.string();
+ break;
+ }
+ case 2: {
+ message.digestBytes = reader.bytes();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Digest message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Digest} Digest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Digest.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Digest message.
+ * @function verify
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Digest.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.algo != null && message.hasOwnProperty("algo"))
+ if (!$util.isString(message.algo))
+ return "algo: string expected";
+ if (message.digestBytes != null && message.hasOwnProperty("digestBytes"))
+ if (!(message.digestBytes && typeof message.digestBytes.length === "number" || $util.isString(message.digestBytes)))
+ return "digestBytes: buffer expected";
+ return null;
+ };
+
+ /**
+ * Creates a Digest message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Digest} Digest
+ */
+ Digest.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Digest)
+ return object;
+ var message = new $root.grafeas.v1.Digest();
+ if (object.algo != null)
+ message.algo = String(object.algo);
+ if (object.digestBytes != null)
+ if (typeof object.digestBytes === "string")
+ $util.base64.decode(object.digestBytes, message.digestBytes = $util.newBuffer($util.base64.length(object.digestBytes)), 0);
+ else if (object.digestBytes.length >= 0)
+ message.digestBytes = object.digestBytes;
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Digest message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {grafeas.v1.Digest} message Digest
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Digest.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.algo = "";
+ if (options.bytes === String)
+ object.digestBytes = "";
+ else {
+ object.digestBytes = [];
+ if (options.bytes !== Array)
+ object.digestBytes = $util.newBuffer(object.digestBytes);
+ }
+ }
+ if (message.algo != null && message.hasOwnProperty("algo"))
+ object.algo = message.algo;
+ if (message.digestBytes != null && message.hasOwnProperty("digestBytes"))
+ object.digestBytes = options.bytes === String ? $util.base64.encode(message.digestBytes, 0, message.digestBytes.length) : options.bytes === Array ? Array.prototype.slice.call(message.digestBytes) : message.digestBytes;
+ return object;
+ };
+
+ /**
+ * Converts this Digest to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Digest
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Digest.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Digest
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Digest
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Digest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Digest";
+ };
+
+ return Digest;
+ })();
+
+ v1.BuildNote = (function() {
+
+ /**
+ * Properties of a BuildNote.
+ * @memberof grafeas.v1
+ * @interface IBuildNote
+ * @property {string|null} [builderVersion] BuildNote builderVersion
+ */
+
+ /**
+ * Constructs a new BuildNote.
+ * @memberof grafeas.v1
+ * @classdesc Represents a BuildNote.
+ * @implements IBuildNote
+ * @constructor
+ * @param {grafeas.v1.IBuildNote=} [properties] Properties to set
+ */
+ function BuildNote(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]];
+ }
+
+ /**
+ * BuildNote builderVersion.
+ * @member {string} builderVersion
+ * @memberof grafeas.v1.BuildNote
+ * @instance
+ */
+ BuildNote.prototype.builderVersion = "";
+
+ /**
+ * Creates a new BuildNote instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {grafeas.v1.IBuildNote=} [properties] Properties to set
+ * @returns {grafeas.v1.BuildNote} BuildNote instance
+ */
+ BuildNote.create = function create(properties) {
+ return new BuildNote(properties);
+ };
+
+ /**
+ * Encodes the specified BuildNote message. Does not implicitly {@link grafeas.v1.BuildNote.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {grafeas.v1.IBuildNote} message BuildNote message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuildNote.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.builderVersion != null && Object.hasOwnProperty.call(message, "builderVersion"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.builderVersion);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BuildNote message, length delimited. Does not implicitly {@link grafeas.v1.BuildNote.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {grafeas.v1.IBuildNote} message BuildNote message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuildNote.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BuildNote message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.BuildNote} BuildNote
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuildNote.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.grafeas.v1.BuildNote();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.builderVersion = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BuildNote message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.BuildNote} BuildNote
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuildNote.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BuildNote message.
+ * @function verify
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BuildNote.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.builderVersion != null && message.hasOwnProperty("builderVersion"))
+ if (!$util.isString(message.builderVersion))
+ return "builderVersion: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a BuildNote message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.BuildNote} BuildNote
+ */
+ BuildNote.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.BuildNote)
+ return object;
+ var message = new $root.grafeas.v1.BuildNote();
+ if (object.builderVersion != null)
+ message.builderVersion = String(object.builderVersion);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BuildNote message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {grafeas.v1.BuildNote} message BuildNote
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BuildNote.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.builderVersion = "";
+ if (message.builderVersion != null && message.hasOwnProperty("builderVersion"))
+ object.builderVersion = message.builderVersion;
+ return object;
+ };
+
+ /**
+ * Converts this BuildNote to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.BuildNote
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BuildNote.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BuildNote
+ * @function getTypeUrl
+ * @memberof grafeas.v1.BuildNote
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BuildNote.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.BuildNote";
+ };
+
+ return BuildNote;
+ })();
+
+ v1.BuildOccurrence = (function() {
+
+ /**
+ * Properties of a BuildOccurrence.
+ * @memberof grafeas.v1
+ * @interface IBuildOccurrence
+ * @property {grafeas.v1.IBuildProvenance|null} [provenance] BuildOccurrence provenance
+ * @property {string|null} [provenanceBytes] BuildOccurrence provenanceBytes
+ * @property {grafeas.v1.IInTotoProvenance|null} [intotoProvenance] BuildOccurrence intotoProvenance
+ * @property {grafeas.v1.IInTotoStatement|null} [intotoStatement] BuildOccurrence intotoStatement
+ */
+
+ /**
+ * Constructs a new BuildOccurrence.
+ * @memberof grafeas.v1
+ * @classdesc Represents a BuildOccurrence.
+ * @implements IBuildOccurrence
+ * @constructor
+ * @param {grafeas.v1.IBuildOccurrence=} [properties] Properties to set
+ */
+ function BuildOccurrence(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]];
+ }
+
+ /**
+ * BuildOccurrence provenance.
+ * @member {grafeas.v1.IBuildProvenance|null|undefined} provenance
+ * @memberof grafeas.v1.BuildOccurrence
+ * @instance
+ */
+ BuildOccurrence.prototype.provenance = null;
+
+ /**
+ * BuildOccurrence provenanceBytes.
+ * @member {string} provenanceBytes
+ * @memberof grafeas.v1.BuildOccurrence
+ * @instance
+ */
+ BuildOccurrence.prototype.provenanceBytes = "";
+
+ /**
+ * BuildOccurrence intotoProvenance.
+ * @member {grafeas.v1.IInTotoProvenance|null|undefined} intotoProvenance
+ * @memberof grafeas.v1.BuildOccurrence
+ * @instance
+ */
+ BuildOccurrence.prototype.intotoProvenance = null;
+
+ /**
+ * BuildOccurrence intotoStatement.
+ * @member {grafeas.v1.IInTotoStatement|null|undefined} intotoStatement
+ * @memberof grafeas.v1.BuildOccurrence
+ * @instance
+ */
+ BuildOccurrence.prototype.intotoStatement = null;
+
+ /**
+ * Creates a new BuildOccurrence instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {grafeas.v1.IBuildOccurrence=} [properties] Properties to set
+ * @returns {grafeas.v1.BuildOccurrence} BuildOccurrence instance
+ */
+ BuildOccurrence.create = function create(properties) {
+ return new BuildOccurrence(properties);
+ };
+
+ /**
+ * Encodes the specified BuildOccurrence message. Does not implicitly {@link grafeas.v1.BuildOccurrence.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {grafeas.v1.IBuildOccurrence} message BuildOccurrence message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuildOccurrence.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.provenance != null && Object.hasOwnProperty.call(message, "provenance"))
+ $root.grafeas.v1.BuildProvenance.encode(message.provenance, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.provenanceBytes != null && Object.hasOwnProperty.call(message, "provenanceBytes"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.provenanceBytes);
+ if (message.intotoProvenance != null && Object.hasOwnProperty.call(message, "intotoProvenance"))
+ $root.grafeas.v1.InTotoProvenance.encode(message.intotoProvenance, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.intotoStatement != null && Object.hasOwnProperty.call(message, "intotoStatement"))
+ $root.grafeas.v1.InTotoStatement.encode(message.intotoStatement, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BuildOccurrence message, length delimited. Does not implicitly {@link grafeas.v1.BuildOccurrence.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {grafeas.v1.IBuildOccurrence} message BuildOccurrence message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuildOccurrence.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BuildOccurrence message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.BuildOccurrence} BuildOccurrence
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuildOccurrence.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.grafeas.v1.BuildOccurrence();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.provenance = $root.grafeas.v1.BuildProvenance.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.provenanceBytes = reader.string();
+ break;
+ }
+ case 3: {
+ message.intotoProvenance = $root.grafeas.v1.InTotoProvenance.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.intotoStatement = $root.grafeas.v1.InTotoStatement.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BuildOccurrence message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.BuildOccurrence} BuildOccurrence
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuildOccurrence.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BuildOccurrence message.
+ * @function verify
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BuildOccurrence.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.provenance != null && message.hasOwnProperty("provenance")) {
+ var error = $root.grafeas.v1.BuildProvenance.verify(message.provenance);
+ if (error)
+ return "provenance." + error;
+ }
+ if (message.provenanceBytes != null && message.hasOwnProperty("provenanceBytes"))
+ if (!$util.isString(message.provenanceBytes))
+ return "provenanceBytes: string expected";
+ if (message.intotoProvenance != null && message.hasOwnProperty("intotoProvenance")) {
+ var error = $root.grafeas.v1.InTotoProvenance.verify(message.intotoProvenance);
+ if (error)
+ return "intotoProvenance." + error;
+ }
+ if (message.intotoStatement != null && message.hasOwnProperty("intotoStatement")) {
+ var error = $root.grafeas.v1.InTotoStatement.verify(message.intotoStatement);
+ if (error)
+ return "intotoStatement." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a BuildOccurrence message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.BuildOccurrence} BuildOccurrence
+ */
+ BuildOccurrence.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.BuildOccurrence)
+ return object;
+ var message = new $root.grafeas.v1.BuildOccurrence();
+ if (object.provenance != null) {
+ if (typeof object.provenance !== "object")
+ throw TypeError(".grafeas.v1.BuildOccurrence.provenance: object expected");
+ message.provenance = $root.grafeas.v1.BuildProvenance.fromObject(object.provenance);
+ }
+ if (object.provenanceBytes != null)
+ message.provenanceBytes = String(object.provenanceBytes);
+ if (object.intotoProvenance != null) {
+ if (typeof object.intotoProvenance !== "object")
+ throw TypeError(".grafeas.v1.BuildOccurrence.intotoProvenance: object expected");
+ message.intotoProvenance = $root.grafeas.v1.InTotoProvenance.fromObject(object.intotoProvenance);
+ }
+ if (object.intotoStatement != null) {
+ if (typeof object.intotoStatement !== "object")
+ throw TypeError(".grafeas.v1.BuildOccurrence.intotoStatement: object expected");
+ message.intotoStatement = $root.grafeas.v1.InTotoStatement.fromObject(object.intotoStatement);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BuildOccurrence message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {grafeas.v1.BuildOccurrence} message BuildOccurrence
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BuildOccurrence.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.provenance = null;
+ object.provenanceBytes = "";
+ object.intotoProvenance = null;
+ object.intotoStatement = null;
+ }
+ if (message.provenance != null && message.hasOwnProperty("provenance"))
+ object.provenance = $root.grafeas.v1.BuildProvenance.toObject(message.provenance, options);
+ if (message.provenanceBytes != null && message.hasOwnProperty("provenanceBytes"))
+ object.provenanceBytes = message.provenanceBytes;
+ if (message.intotoProvenance != null && message.hasOwnProperty("intotoProvenance"))
+ object.intotoProvenance = $root.grafeas.v1.InTotoProvenance.toObject(message.intotoProvenance, options);
+ if (message.intotoStatement != null && message.hasOwnProperty("intotoStatement"))
+ object.intotoStatement = $root.grafeas.v1.InTotoStatement.toObject(message.intotoStatement, options);
+ return object;
+ };
+
+ /**
+ * Converts this BuildOccurrence to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.BuildOccurrence
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BuildOccurrence.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BuildOccurrence
+ * @function getTypeUrl
+ * @memberof grafeas.v1.BuildOccurrence
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BuildOccurrence.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.BuildOccurrence";
+ };
+
+ return BuildOccurrence;
+ })();
+
+ v1.Recipe = (function() {
+
+ /**
+ * Properties of a Recipe.
+ * @memberof grafeas.v1
+ * @interface IRecipe
+ * @property {string|null} [type] Recipe type
+ * @property {number|Long|null} [definedInMaterial] Recipe definedInMaterial
+ * @property {string|null} [entryPoint] Recipe entryPoint
+ * @property {Array.|null} ["arguments"] Recipe arguments
+ * @property {Array.|null} [environment] Recipe environment
+ */
+
+ /**
+ * Constructs a new Recipe.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Recipe.
+ * @implements IRecipe
+ * @constructor
+ * @param {grafeas.v1.IRecipe=} [properties] Properties to set
+ */
+ function Recipe(properties) {
+ this["arguments"] = [];
+ this.environment = [];
+ 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]];
+ }
+
+ /**
+ * Recipe type.
+ * @member {string} type
+ * @memberof grafeas.v1.Recipe
+ * @instance
+ */
+ Recipe.prototype.type = "";
+
+ /**
+ * Recipe definedInMaterial.
+ * @member {number|Long} definedInMaterial
+ * @memberof grafeas.v1.Recipe
+ * @instance
+ */
+ Recipe.prototype.definedInMaterial = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
+
+ /**
+ * Recipe entryPoint.
+ * @member {string} entryPoint
+ * @memberof grafeas.v1.Recipe
+ * @instance
+ */
+ Recipe.prototype.entryPoint = "";
+
+ /**
+ * Recipe arguments.
+ * @member {Array.} arguments
+ * @memberof grafeas.v1.Recipe
+ * @instance
+ */
+ Recipe.prototype["arguments"] = $util.emptyArray;
+
+ /**
+ * Recipe environment.
+ * @member {Array.} environment
+ * @memberof grafeas.v1.Recipe
+ * @instance
+ */
+ Recipe.prototype.environment = $util.emptyArray;
+
+ /**
+ * Creates a new Recipe instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {grafeas.v1.IRecipe=} [properties] Properties to set
+ * @returns {grafeas.v1.Recipe} Recipe instance
+ */
+ Recipe.create = function create(properties) {
+ return new Recipe(properties);
+ };
+
+ /**
+ * Encodes the specified Recipe message. Does not implicitly {@link grafeas.v1.Recipe.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {grafeas.v1.IRecipe} message Recipe message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Recipe.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.type);
+ if (message.definedInMaterial != null && Object.hasOwnProperty.call(message, "definedInMaterial"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int64(message.definedInMaterial);
+ if (message.entryPoint != null && Object.hasOwnProperty.call(message, "entryPoint"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.entryPoint);
+ if (message["arguments"] != null && message["arguments"].length)
+ for (var i = 0; i < message["arguments"].length; ++i)
+ $root.google.protobuf.Any.encode(message["arguments"][i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.environment != null && message.environment.length)
+ for (var i = 0; i < message.environment.length; ++i)
+ $root.google.protobuf.Any.encode(message.environment[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Recipe message, length delimited. Does not implicitly {@link grafeas.v1.Recipe.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {grafeas.v1.IRecipe} message Recipe message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Recipe.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Recipe message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Recipe} Recipe
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Recipe.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.grafeas.v1.Recipe();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.type = reader.string();
+ break;
+ }
+ case 2: {
+ message.definedInMaterial = reader.int64();
+ break;
+ }
+ case 3: {
+ message.entryPoint = reader.string();
+ break;
+ }
+ case 4: {
+ if (!(message["arguments"] && message["arguments"].length))
+ message["arguments"] = [];
+ message["arguments"].push($root.google.protobuf.Any.decode(reader, reader.uint32()));
+ break;
+ }
+ case 5: {
+ if (!(message.environment && message.environment.length))
+ message.environment = [];
+ message.environment.push($root.google.protobuf.Any.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Recipe message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Recipe} Recipe
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Recipe.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Recipe message.
+ * @function verify
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Recipe.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.type != null && message.hasOwnProperty("type"))
+ if (!$util.isString(message.type))
+ return "type: string expected";
+ if (message.definedInMaterial != null && message.hasOwnProperty("definedInMaterial"))
+ if (!$util.isInteger(message.definedInMaterial) && !(message.definedInMaterial && $util.isInteger(message.definedInMaterial.low) && $util.isInteger(message.definedInMaterial.high)))
+ return "definedInMaterial: integer|Long expected";
+ if (message.entryPoint != null && message.hasOwnProperty("entryPoint"))
+ if (!$util.isString(message.entryPoint))
+ return "entryPoint: string expected";
+ if (message["arguments"] != null && message.hasOwnProperty("arguments")) {
+ if (!Array.isArray(message["arguments"]))
+ return "arguments: array expected";
+ for (var i = 0; i < message["arguments"].length; ++i) {
+ var error = $root.google.protobuf.Any.verify(message["arguments"][i]);
+ if (error)
+ return "arguments." + error;
+ }
+ }
+ if (message.environment != null && message.hasOwnProperty("environment")) {
+ if (!Array.isArray(message.environment))
+ return "environment: array expected";
+ for (var i = 0; i < message.environment.length; ++i) {
+ var error = $root.google.protobuf.Any.verify(message.environment[i]);
+ if (error)
+ return "environment." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Recipe message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Recipe} Recipe
+ */
+ Recipe.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Recipe)
+ return object;
+ var message = new $root.grafeas.v1.Recipe();
+ if (object.type != null)
+ message.type = String(object.type);
+ if (object.definedInMaterial != null)
+ if ($util.Long)
+ (message.definedInMaterial = $util.Long.fromValue(object.definedInMaterial)).unsigned = false;
+ else if (typeof object.definedInMaterial === "string")
+ message.definedInMaterial = parseInt(object.definedInMaterial, 10);
+ else if (typeof object.definedInMaterial === "number")
+ message.definedInMaterial = object.definedInMaterial;
+ else if (typeof object.definedInMaterial === "object")
+ message.definedInMaterial = new $util.LongBits(object.definedInMaterial.low >>> 0, object.definedInMaterial.high >>> 0).toNumber();
+ if (object.entryPoint != null)
+ message.entryPoint = String(object.entryPoint);
+ if (object["arguments"]) {
+ if (!Array.isArray(object["arguments"]))
+ throw TypeError(".grafeas.v1.Recipe.arguments: array expected");
+ message["arguments"] = [];
+ for (var i = 0; i < object["arguments"].length; ++i) {
+ if (typeof object["arguments"][i] !== "object")
+ throw TypeError(".grafeas.v1.Recipe.arguments: object expected");
+ message["arguments"][i] = $root.google.protobuf.Any.fromObject(object["arguments"][i]);
+ }
+ }
+ if (object.environment) {
+ if (!Array.isArray(object.environment))
+ throw TypeError(".grafeas.v1.Recipe.environment: array expected");
+ message.environment = [];
+ for (var i = 0; i < object.environment.length; ++i) {
+ if (typeof object.environment[i] !== "object")
+ throw TypeError(".grafeas.v1.Recipe.environment: object expected");
+ message.environment[i] = $root.google.protobuf.Any.fromObject(object.environment[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Recipe message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {grafeas.v1.Recipe} message Recipe
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Recipe.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object["arguments"] = [];
+ object.environment = [];
+ }
+ if (options.defaults) {
+ object.type = "";
+ if ($util.Long) {
+ var long = new $util.Long(0, 0, false);
+ object.definedInMaterial = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
+ } else
+ object.definedInMaterial = options.longs === String ? "0" : 0;
+ object.entryPoint = "";
+ }
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = message.type;
+ if (message.definedInMaterial != null && message.hasOwnProperty("definedInMaterial"))
+ if (typeof message.definedInMaterial === "number")
+ object.definedInMaterial = options.longs === String ? String(message.definedInMaterial) : message.definedInMaterial;
+ else
+ object.definedInMaterial = options.longs === String ? $util.Long.prototype.toString.call(message.definedInMaterial) : options.longs === Number ? new $util.LongBits(message.definedInMaterial.low >>> 0, message.definedInMaterial.high >>> 0).toNumber() : message.definedInMaterial;
+ if (message.entryPoint != null && message.hasOwnProperty("entryPoint"))
+ object.entryPoint = message.entryPoint;
+ if (message["arguments"] && message["arguments"].length) {
+ object["arguments"] = [];
+ for (var j = 0; j < message["arguments"].length; ++j)
+ object["arguments"][j] = $root.google.protobuf.Any.toObject(message["arguments"][j], options);
+ }
+ if (message.environment && message.environment.length) {
+ object.environment = [];
+ for (var j = 0; j < message.environment.length; ++j)
+ object.environment[j] = $root.google.protobuf.Any.toObject(message.environment[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Recipe to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Recipe
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Recipe.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Recipe
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Recipe
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Recipe.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Recipe";
+ };
+
+ return Recipe;
+ })();
+
+ v1.Completeness = (function() {
+
+ /**
+ * Properties of a Completeness.
+ * @memberof grafeas.v1
+ * @interface ICompleteness
+ * @property {boolean|null} ["arguments"] Completeness arguments
+ * @property {boolean|null} [environment] Completeness environment
+ * @property {boolean|null} [materials] Completeness materials
+ */
+
+ /**
+ * Constructs a new Completeness.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Completeness.
+ * @implements ICompleteness
+ * @constructor
+ * @param {grafeas.v1.ICompleteness=} [properties] Properties to set
+ */
+ function Completeness(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]];
+ }
+
+ /**
+ * Completeness arguments.
+ * @member {boolean} arguments
+ * @memberof grafeas.v1.Completeness
+ * @instance
+ */
+ Completeness.prototype["arguments"] = false;
+
+ /**
+ * Completeness environment.
+ * @member {boolean} environment
+ * @memberof grafeas.v1.Completeness
+ * @instance
+ */
+ Completeness.prototype.environment = false;
+
+ /**
+ * Completeness materials.
+ * @member {boolean} materials
+ * @memberof grafeas.v1.Completeness
+ * @instance
+ */
+ Completeness.prototype.materials = false;
+
+ /**
+ * Creates a new Completeness instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {grafeas.v1.ICompleteness=} [properties] Properties to set
+ * @returns {grafeas.v1.Completeness} Completeness instance
+ */
+ Completeness.create = function create(properties) {
+ return new Completeness(properties);
+ };
+
+ /**
+ * Encodes the specified Completeness message. Does not implicitly {@link grafeas.v1.Completeness.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {grafeas.v1.ICompleteness} message Completeness message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Completeness.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message["arguments"] != null && Object.hasOwnProperty.call(message, "arguments"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message["arguments"]);
+ if (message.environment != null && Object.hasOwnProperty.call(message, "environment"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.environment);
+ if (message.materials != null && Object.hasOwnProperty.call(message, "materials"))
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.materials);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Completeness message, length delimited. Does not implicitly {@link grafeas.v1.Completeness.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {grafeas.v1.ICompleteness} message Completeness message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Completeness.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Completeness message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Completeness} Completeness
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Completeness.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.grafeas.v1.Completeness();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message["arguments"] = reader.bool();
+ break;
+ }
+ case 2: {
+ message.environment = reader.bool();
+ break;
+ }
+ case 3: {
+ message.materials = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Completeness message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Completeness} Completeness
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Completeness.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Completeness message.
+ * @function verify
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Completeness.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message["arguments"] != null && message.hasOwnProperty("arguments"))
+ if (typeof message["arguments"] !== "boolean")
+ return "arguments: boolean expected";
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ if (typeof message.environment !== "boolean")
+ return "environment: boolean expected";
+ if (message.materials != null && message.hasOwnProperty("materials"))
+ if (typeof message.materials !== "boolean")
+ return "materials: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a Completeness message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Completeness} Completeness
+ */
+ Completeness.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Completeness)
+ return object;
+ var message = new $root.grafeas.v1.Completeness();
+ if (object["arguments"] != null)
+ message["arguments"] = Boolean(object["arguments"]);
+ if (object.environment != null)
+ message.environment = Boolean(object.environment);
+ if (object.materials != null)
+ message.materials = Boolean(object.materials);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Completeness message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {grafeas.v1.Completeness} message Completeness
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Completeness.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object["arguments"] = false;
+ object.environment = false;
+ object.materials = false;
+ }
+ if (message["arguments"] != null && message.hasOwnProperty("arguments"))
+ object["arguments"] = message["arguments"];
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ object.environment = message.environment;
+ if (message.materials != null && message.hasOwnProperty("materials"))
+ object.materials = message.materials;
+ return object;
+ };
+
+ /**
+ * Converts this Completeness to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Completeness
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Completeness.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Completeness
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Completeness
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Completeness.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Completeness";
+ };
+
+ return Completeness;
+ })();
+
+ v1.Metadata = (function() {
+
+ /**
+ * Properties of a Metadata.
+ * @memberof grafeas.v1
+ * @interface IMetadata
+ * @property {string|null} [buildInvocationId] Metadata buildInvocationId
+ * @property {google.protobuf.ITimestamp|null} [buildStartedOn] Metadata buildStartedOn
+ * @property {google.protobuf.ITimestamp|null} [buildFinishedOn] Metadata buildFinishedOn
+ * @property {grafeas.v1.ICompleteness|null} [completeness] Metadata completeness
+ * @property {boolean|null} [reproducible] Metadata reproducible
+ */
+
+ /**
+ * Constructs a new Metadata.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Metadata.
+ * @implements IMetadata
+ * @constructor
+ * @param {grafeas.v1.IMetadata=} [properties] Properties to set
+ */
+ function Metadata(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]];
+ }
+
+ /**
+ * Metadata buildInvocationId.
+ * @member {string} buildInvocationId
+ * @memberof grafeas.v1.Metadata
+ * @instance
+ */
+ Metadata.prototype.buildInvocationId = "";
+
+ /**
+ * Metadata buildStartedOn.
+ * @member {google.protobuf.ITimestamp|null|undefined} buildStartedOn
+ * @memberof grafeas.v1.Metadata
+ * @instance
+ */
+ Metadata.prototype.buildStartedOn = null;
+
+ /**
+ * Metadata buildFinishedOn.
+ * @member {google.protobuf.ITimestamp|null|undefined} buildFinishedOn
+ * @memberof grafeas.v1.Metadata
+ * @instance
+ */
+ Metadata.prototype.buildFinishedOn = null;
+
+ /**
+ * Metadata completeness.
+ * @member {grafeas.v1.ICompleteness|null|undefined} completeness
+ * @memberof grafeas.v1.Metadata
+ * @instance
+ */
+ Metadata.prototype.completeness = null;
+
+ /**
+ * Metadata reproducible.
+ * @member {boolean} reproducible
+ * @memberof grafeas.v1.Metadata
+ * @instance
+ */
+ Metadata.prototype.reproducible = false;
+
+ /**
+ * Creates a new Metadata instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {grafeas.v1.IMetadata=} [properties] Properties to set
+ * @returns {grafeas.v1.Metadata} Metadata instance
+ */
+ Metadata.create = function create(properties) {
+ return new Metadata(properties);
+ };
+
+ /**
+ * Encodes the specified Metadata message. Does not implicitly {@link grafeas.v1.Metadata.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {grafeas.v1.IMetadata} message Metadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Metadata.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.buildInvocationId != null && Object.hasOwnProperty.call(message, "buildInvocationId"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.buildInvocationId);
+ if (message.buildStartedOn != null && Object.hasOwnProperty.call(message, "buildStartedOn"))
+ $root.google.protobuf.Timestamp.encode(message.buildStartedOn, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.buildFinishedOn != null && Object.hasOwnProperty.call(message, "buildFinishedOn"))
+ $root.google.protobuf.Timestamp.encode(message.buildFinishedOn, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.completeness != null && Object.hasOwnProperty.call(message, "completeness"))
+ $root.grafeas.v1.Completeness.encode(message.completeness, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.reproducible != null && Object.hasOwnProperty.call(message, "reproducible"))
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.reproducible);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Metadata message, length delimited. Does not implicitly {@link grafeas.v1.Metadata.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {grafeas.v1.IMetadata} message Metadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Metadata.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Metadata message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Metadata} Metadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Metadata.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.grafeas.v1.Metadata();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.buildInvocationId = reader.string();
+ break;
+ }
+ case 2: {
+ message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.completeness = $root.grafeas.v1.Completeness.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.reproducible = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Metadata message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Metadata} Metadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Metadata.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Metadata message.
+ * @function verify
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Metadata.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId"))
+ if (!$util.isString(message.buildInvocationId))
+ return "buildInvocationId: string expected";
+ if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn);
+ if (error)
+ return "buildStartedOn." + error;
+ }
+ if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn);
+ if (error)
+ return "buildFinishedOn." + error;
+ }
+ if (message.completeness != null && message.hasOwnProperty("completeness")) {
+ var error = $root.grafeas.v1.Completeness.verify(message.completeness);
+ if (error)
+ return "completeness." + error;
+ }
+ if (message.reproducible != null && message.hasOwnProperty("reproducible"))
+ if (typeof message.reproducible !== "boolean")
+ return "reproducible: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a Metadata message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Metadata} Metadata
+ */
+ Metadata.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Metadata)
+ return object;
+ var message = new $root.grafeas.v1.Metadata();
+ if (object.buildInvocationId != null)
+ message.buildInvocationId = String(object.buildInvocationId);
+ if (object.buildStartedOn != null) {
+ if (typeof object.buildStartedOn !== "object")
+ throw TypeError(".grafeas.v1.Metadata.buildStartedOn: object expected");
+ message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn);
+ }
+ if (object.buildFinishedOn != null) {
+ if (typeof object.buildFinishedOn !== "object")
+ throw TypeError(".grafeas.v1.Metadata.buildFinishedOn: object expected");
+ message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn);
+ }
+ if (object.completeness != null) {
+ if (typeof object.completeness !== "object")
+ throw TypeError(".grafeas.v1.Metadata.completeness: object expected");
+ message.completeness = $root.grafeas.v1.Completeness.fromObject(object.completeness);
+ }
+ if (object.reproducible != null)
+ message.reproducible = Boolean(object.reproducible);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Metadata message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {grafeas.v1.Metadata} message Metadata
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Metadata.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.buildInvocationId = "";
+ object.buildStartedOn = null;
+ object.buildFinishedOn = null;
+ object.completeness = null;
+ object.reproducible = false;
+ }
+ if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId"))
+ object.buildInvocationId = message.buildInvocationId;
+ if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn"))
+ object.buildStartedOn = $root.google.protobuf.Timestamp.toObject(message.buildStartedOn, options);
+ if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn"))
+ object.buildFinishedOn = $root.google.protobuf.Timestamp.toObject(message.buildFinishedOn, options);
+ if (message.completeness != null && message.hasOwnProperty("completeness"))
+ object.completeness = $root.grafeas.v1.Completeness.toObject(message.completeness, options);
+ if (message.reproducible != null && message.hasOwnProperty("reproducible"))
+ object.reproducible = message.reproducible;
+ return object;
+ };
+
+ /**
+ * Converts this Metadata to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Metadata
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Metadata.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Metadata
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Metadata
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Metadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Metadata";
+ };
+
+ return Metadata;
+ })();
+
+ v1.BuilderConfig = (function() {
+
+ /**
+ * Properties of a BuilderConfig.
+ * @memberof grafeas.v1
+ * @interface IBuilderConfig
+ * @property {string|null} [id] BuilderConfig id
+ */
+
+ /**
+ * Constructs a new BuilderConfig.
+ * @memberof grafeas.v1
+ * @classdesc Represents a BuilderConfig.
+ * @implements IBuilderConfig
+ * @constructor
+ * @param {grafeas.v1.IBuilderConfig=} [properties] Properties to set
+ */
+ function BuilderConfig(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]];
+ }
+
+ /**
+ * BuilderConfig id.
+ * @member {string} id
+ * @memberof grafeas.v1.BuilderConfig
+ * @instance
+ */
+ BuilderConfig.prototype.id = "";
+
+ /**
+ * Creates a new BuilderConfig instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {grafeas.v1.IBuilderConfig=} [properties] Properties to set
+ * @returns {grafeas.v1.BuilderConfig} BuilderConfig instance
+ */
+ BuilderConfig.create = function create(properties) {
+ return new BuilderConfig(properties);
+ };
+
+ /**
+ * Encodes the specified BuilderConfig message. Does not implicitly {@link grafeas.v1.BuilderConfig.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {grafeas.v1.IBuilderConfig} message BuilderConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuilderConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BuilderConfig message, length delimited. Does not implicitly {@link grafeas.v1.BuilderConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {grafeas.v1.IBuilderConfig} message BuilderConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuilderConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BuilderConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.BuilderConfig} BuilderConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuilderConfig.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.grafeas.v1.BuilderConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.id = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BuilderConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.BuilderConfig} BuilderConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuilderConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BuilderConfig message.
+ * @function verify
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BuilderConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.id != null && message.hasOwnProperty("id"))
+ if (!$util.isString(message.id))
+ return "id: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a BuilderConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.BuilderConfig} BuilderConfig
+ */
+ BuilderConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.BuilderConfig)
+ return object;
+ var message = new $root.grafeas.v1.BuilderConfig();
+ if (object.id != null)
+ message.id = String(object.id);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BuilderConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {grafeas.v1.BuilderConfig} message BuilderConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BuilderConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.id = "";
+ if (message.id != null && message.hasOwnProperty("id"))
+ object.id = message.id;
+ return object;
+ };
+
+ /**
+ * Converts this BuilderConfig to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.BuilderConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BuilderConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BuilderConfig
+ * @function getTypeUrl
+ * @memberof grafeas.v1.BuilderConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BuilderConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.BuilderConfig";
+ };
+
+ return BuilderConfig;
+ })();
+
+ v1.InTotoProvenance = (function() {
+
+ /**
+ * Properties of an InTotoProvenance.
+ * @memberof grafeas.v1
+ * @interface IInTotoProvenance
+ * @property {grafeas.v1.IBuilderConfig|null} [builderConfig] InTotoProvenance builderConfig
+ * @property {grafeas.v1.IRecipe|null} [recipe] InTotoProvenance recipe
+ * @property {grafeas.v1.IMetadata|null} [metadata] InTotoProvenance metadata
+ * @property {Array.|null} [materials] InTotoProvenance materials
+ */
+
+ /**
+ * Constructs a new InTotoProvenance.
+ * @memberof grafeas.v1
+ * @classdesc Represents an InTotoProvenance.
+ * @implements IInTotoProvenance
+ * @constructor
+ * @param {grafeas.v1.IInTotoProvenance=} [properties] Properties to set
+ */
+ function InTotoProvenance(properties) {
+ this.materials = [];
+ 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]];
+ }
+
+ /**
+ * InTotoProvenance builderConfig.
+ * @member {grafeas.v1.IBuilderConfig|null|undefined} builderConfig
+ * @memberof grafeas.v1.InTotoProvenance
+ * @instance
+ */
+ InTotoProvenance.prototype.builderConfig = null;
+
+ /**
+ * InTotoProvenance recipe.
+ * @member {grafeas.v1.IRecipe|null|undefined} recipe
+ * @memberof grafeas.v1.InTotoProvenance
+ * @instance
+ */
+ InTotoProvenance.prototype.recipe = null;
+
+ /**
+ * InTotoProvenance metadata.
+ * @member {grafeas.v1.IMetadata|null|undefined} metadata
+ * @memberof grafeas.v1.InTotoProvenance
+ * @instance
+ */
+ InTotoProvenance.prototype.metadata = null;
+
+ /**
+ * InTotoProvenance materials.
+ * @member {Array.} materials
+ * @memberof grafeas.v1.InTotoProvenance
+ * @instance
+ */
+ InTotoProvenance.prototype.materials = $util.emptyArray;
+
+ /**
+ * Creates a new InTotoProvenance instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {grafeas.v1.IInTotoProvenance=} [properties] Properties to set
+ * @returns {grafeas.v1.InTotoProvenance} InTotoProvenance instance
+ */
+ InTotoProvenance.create = function create(properties) {
+ return new InTotoProvenance(properties);
+ };
+
+ /**
+ * Encodes the specified InTotoProvenance message. Does not implicitly {@link grafeas.v1.InTotoProvenance.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {grafeas.v1.IInTotoProvenance} message InTotoProvenance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ InTotoProvenance.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.builderConfig != null && Object.hasOwnProperty.call(message, "builderConfig"))
+ $root.grafeas.v1.BuilderConfig.encode(message.builderConfig, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.recipe != null && Object.hasOwnProperty.call(message, "recipe"))
+ $root.grafeas.v1.Recipe.encode(message.recipe, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.metadata != null && Object.hasOwnProperty.call(message, "metadata"))
+ $root.grafeas.v1.Metadata.encode(message.metadata, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.materials != null && message.materials.length)
+ for (var i = 0; i < message.materials.length; ++i)
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.materials[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified InTotoProvenance message, length delimited. Does not implicitly {@link grafeas.v1.InTotoProvenance.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {grafeas.v1.IInTotoProvenance} message InTotoProvenance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ InTotoProvenance.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an InTotoProvenance message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.InTotoProvenance} InTotoProvenance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ InTotoProvenance.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.grafeas.v1.InTotoProvenance();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.builderConfig = $root.grafeas.v1.BuilderConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.recipe = $root.grafeas.v1.Recipe.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.metadata = $root.grafeas.v1.Metadata.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (!(message.materials && message.materials.length))
+ message.materials = [];
+ message.materials.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an InTotoProvenance message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.InTotoProvenance} InTotoProvenance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ InTotoProvenance.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an InTotoProvenance message.
+ * @function verify
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ InTotoProvenance.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.builderConfig != null && message.hasOwnProperty("builderConfig")) {
+ var error = $root.grafeas.v1.BuilderConfig.verify(message.builderConfig);
+ if (error)
+ return "builderConfig." + error;
+ }
+ if (message.recipe != null && message.hasOwnProperty("recipe")) {
+ var error = $root.grafeas.v1.Recipe.verify(message.recipe);
+ if (error)
+ return "recipe." + error;
+ }
+ if (message.metadata != null && message.hasOwnProperty("metadata")) {
+ var error = $root.grafeas.v1.Metadata.verify(message.metadata);
+ if (error)
+ return "metadata." + error;
+ }
+ if (message.materials != null && message.hasOwnProperty("materials")) {
+ if (!Array.isArray(message.materials))
+ return "materials: array expected";
+ for (var i = 0; i < message.materials.length; ++i)
+ if (!$util.isString(message.materials[i]))
+ return "materials: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates an InTotoProvenance message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.InTotoProvenance} InTotoProvenance
+ */
+ InTotoProvenance.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.InTotoProvenance)
+ return object;
+ var message = new $root.grafeas.v1.InTotoProvenance();
+ if (object.builderConfig != null) {
+ if (typeof object.builderConfig !== "object")
+ throw TypeError(".grafeas.v1.InTotoProvenance.builderConfig: object expected");
+ message.builderConfig = $root.grafeas.v1.BuilderConfig.fromObject(object.builderConfig);
+ }
+ if (object.recipe != null) {
+ if (typeof object.recipe !== "object")
+ throw TypeError(".grafeas.v1.InTotoProvenance.recipe: object expected");
+ message.recipe = $root.grafeas.v1.Recipe.fromObject(object.recipe);
+ }
+ if (object.metadata != null) {
+ if (typeof object.metadata !== "object")
+ throw TypeError(".grafeas.v1.InTotoProvenance.metadata: object expected");
+ message.metadata = $root.grafeas.v1.Metadata.fromObject(object.metadata);
+ }
+ if (object.materials) {
+ if (!Array.isArray(object.materials))
+ throw TypeError(".grafeas.v1.InTotoProvenance.materials: array expected");
+ message.materials = [];
+ for (var i = 0; i < object.materials.length; ++i)
+ message.materials[i] = String(object.materials[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an InTotoProvenance message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {grafeas.v1.InTotoProvenance} message InTotoProvenance
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ InTotoProvenance.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.materials = [];
+ if (options.defaults) {
+ object.builderConfig = null;
+ object.recipe = null;
+ object.metadata = null;
+ }
+ if (message.builderConfig != null && message.hasOwnProperty("builderConfig"))
+ object.builderConfig = $root.grafeas.v1.BuilderConfig.toObject(message.builderConfig, options);
+ if (message.recipe != null && message.hasOwnProperty("recipe"))
+ object.recipe = $root.grafeas.v1.Recipe.toObject(message.recipe, options);
+ if (message.metadata != null && message.hasOwnProperty("metadata"))
+ object.metadata = $root.grafeas.v1.Metadata.toObject(message.metadata, options);
+ if (message.materials && message.materials.length) {
+ object.materials = [];
+ for (var j = 0; j < message.materials.length; ++j)
+ object.materials[j] = message.materials[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this InTotoProvenance to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.InTotoProvenance
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ InTotoProvenance.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for InTotoProvenance
+ * @function getTypeUrl
+ * @memberof grafeas.v1.InTotoProvenance
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ InTotoProvenance.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.InTotoProvenance";
+ };
+
+ return InTotoProvenance;
+ })();
+
+ v1.InTotoStatement = (function() {
+
+ /**
+ * Properties of an InTotoStatement.
+ * @memberof grafeas.v1
+ * @interface IInTotoStatement
+ * @property {string|null} [type] InTotoStatement type
+ * @property {Array.|null} [subject] InTotoStatement subject
+ * @property {string|null} [predicateType] InTotoStatement predicateType
+ * @property {grafeas.v1.IInTotoProvenance|null} [provenance] InTotoStatement provenance
+ * @property {grafeas.v1.ISlsaProvenance|null} [slsaProvenance] InTotoStatement slsaProvenance
+ * @property {grafeas.v1.ISlsaProvenanceZeroTwo|null} [slsaProvenanceZeroTwo] InTotoStatement slsaProvenanceZeroTwo
+ */
+
+ /**
+ * Constructs a new InTotoStatement.
+ * @memberof grafeas.v1
+ * @classdesc Represents an InTotoStatement.
+ * @implements IInTotoStatement
+ * @constructor
+ * @param {grafeas.v1.IInTotoStatement=} [properties] Properties to set
+ */
+ function InTotoStatement(properties) {
+ this.subject = [];
+ 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]];
+ }
+
+ /**
+ * InTotoStatement type.
+ * @member {string} type
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ InTotoStatement.prototype.type = "";
+
+ /**
+ * InTotoStatement subject.
+ * @member {Array.} subject
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ InTotoStatement.prototype.subject = $util.emptyArray;
+
+ /**
+ * InTotoStatement predicateType.
+ * @member {string} predicateType
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ InTotoStatement.prototype.predicateType = "";
+
+ /**
+ * InTotoStatement provenance.
+ * @member {grafeas.v1.IInTotoProvenance|null|undefined} provenance
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ InTotoStatement.prototype.provenance = null;
+
+ /**
+ * InTotoStatement slsaProvenance.
+ * @member {grafeas.v1.ISlsaProvenance|null|undefined} slsaProvenance
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ InTotoStatement.prototype.slsaProvenance = null;
+
+ /**
+ * InTotoStatement slsaProvenanceZeroTwo.
+ * @member {grafeas.v1.ISlsaProvenanceZeroTwo|null|undefined} slsaProvenanceZeroTwo
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ InTotoStatement.prototype.slsaProvenanceZeroTwo = null;
+
+ // OneOf field names bound to virtual getters and setters
+ var $oneOfFields;
+
+ /**
+ * InTotoStatement predicate.
+ * @member {"provenance"|"slsaProvenance"|"slsaProvenanceZeroTwo"|undefined} predicate
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ */
+ Object.defineProperty(InTotoStatement.prototype, "predicate", {
+ get: $util.oneOfGetter($oneOfFields = ["provenance", "slsaProvenance", "slsaProvenanceZeroTwo"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * Creates a new InTotoStatement instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {grafeas.v1.IInTotoStatement=} [properties] Properties to set
+ * @returns {grafeas.v1.InTotoStatement} InTotoStatement instance
+ */
+ InTotoStatement.create = function create(properties) {
+ return new InTotoStatement(properties);
+ };
+
+ /**
+ * Encodes the specified InTotoStatement message. Does not implicitly {@link grafeas.v1.InTotoStatement.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {grafeas.v1.IInTotoStatement} message InTotoStatement message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ InTotoStatement.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.type);
+ if (message.subject != null && message.subject.length)
+ for (var i = 0; i < message.subject.length; ++i)
+ $root.grafeas.v1.Subject.encode(message.subject[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.predicateType != null && Object.hasOwnProperty.call(message, "predicateType"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.predicateType);
+ if (message.provenance != null && Object.hasOwnProperty.call(message, "provenance"))
+ $root.grafeas.v1.InTotoProvenance.encode(message.provenance, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.slsaProvenance != null && Object.hasOwnProperty.call(message, "slsaProvenance"))
+ $root.grafeas.v1.SlsaProvenance.encode(message.slsaProvenance, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.slsaProvenanceZeroTwo != null && Object.hasOwnProperty.call(message, "slsaProvenanceZeroTwo"))
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.encode(message.slsaProvenanceZeroTwo, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified InTotoStatement message, length delimited. Does not implicitly {@link grafeas.v1.InTotoStatement.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {grafeas.v1.IInTotoStatement} message InTotoStatement message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ InTotoStatement.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an InTotoStatement message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.InTotoStatement} InTotoStatement
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ InTotoStatement.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.grafeas.v1.InTotoStatement();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.type = reader.string();
+ break;
+ }
+ case 2: {
+ if (!(message.subject && message.subject.length))
+ message.subject = [];
+ message.subject.push($root.grafeas.v1.Subject.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.predicateType = reader.string();
+ break;
+ }
+ case 4: {
+ message.provenance = $root.grafeas.v1.InTotoProvenance.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.slsaProvenance = $root.grafeas.v1.SlsaProvenance.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an InTotoStatement message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.InTotoStatement} InTotoStatement
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ InTotoStatement.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an InTotoStatement message.
+ * @function verify
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ InTotoStatement.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ var properties = {};
+ if (message.type != null && message.hasOwnProperty("type"))
+ if (!$util.isString(message.type))
+ return "type: string expected";
+ if (message.subject != null && message.hasOwnProperty("subject")) {
+ if (!Array.isArray(message.subject))
+ return "subject: array expected";
+ for (var i = 0; i < message.subject.length; ++i) {
+ var error = $root.grafeas.v1.Subject.verify(message.subject[i]);
+ if (error)
+ return "subject." + error;
+ }
+ }
+ if (message.predicateType != null && message.hasOwnProperty("predicateType"))
+ if (!$util.isString(message.predicateType))
+ return "predicateType: string expected";
+ if (message.provenance != null && message.hasOwnProperty("provenance")) {
+ properties.predicate = 1;
+ {
+ var error = $root.grafeas.v1.InTotoProvenance.verify(message.provenance);
+ if (error)
+ return "provenance." + error;
+ }
+ }
+ if (message.slsaProvenance != null && message.hasOwnProperty("slsaProvenance")) {
+ if (properties.predicate === 1)
+ return "predicate: multiple values";
+ properties.predicate = 1;
+ {
+ var error = $root.grafeas.v1.SlsaProvenance.verify(message.slsaProvenance);
+ if (error)
+ return "slsaProvenance." + error;
+ }
+ }
+ if (message.slsaProvenanceZeroTwo != null && message.hasOwnProperty("slsaProvenanceZeroTwo")) {
+ if (properties.predicate === 1)
+ return "predicate: multiple values";
+ properties.predicate = 1;
+ {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.verify(message.slsaProvenanceZeroTwo);
+ if (error)
+ return "slsaProvenanceZeroTwo." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an InTotoStatement message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.InTotoStatement} InTotoStatement
+ */
+ InTotoStatement.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.InTotoStatement)
+ return object;
+ var message = new $root.grafeas.v1.InTotoStatement();
+ if (object.type != null)
+ message.type = String(object.type);
+ if (object.subject) {
+ if (!Array.isArray(object.subject))
+ throw TypeError(".grafeas.v1.InTotoStatement.subject: array expected");
+ message.subject = [];
+ for (var i = 0; i < object.subject.length; ++i) {
+ if (typeof object.subject[i] !== "object")
+ throw TypeError(".grafeas.v1.InTotoStatement.subject: object expected");
+ message.subject[i] = $root.grafeas.v1.Subject.fromObject(object.subject[i]);
+ }
+ }
+ if (object.predicateType != null)
+ message.predicateType = String(object.predicateType);
+ if (object.provenance != null) {
+ if (typeof object.provenance !== "object")
+ throw TypeError(".grafeas.v1.InTotoStatement.provenance: object expected");
+ message.provenance = $root.grafeas.v1.InTotoProvenance.fromObject(object.provenance);
+ }
+ if (object.slsaProvenance != null) {
+ if (typeof object.slsaProvenance !== "object")
+ throw TypeError(".grafeas.v1.InTotoStatement.slsaProvenance: object expected");
+ message.slsaProvenance = $root.grafeas.v1.SlsaProvenance.fromObject(object.slsaProvenance);
+ }
+ if (object.slsaProvenanceZeroTwo != null) {
+ if (typeof object.slsaProvenanceZeroTwo !== "object")
+ throw TypeError(".grafeas.v1.InTotoStatement.slsaProvenanceZeroTwo: object expected");
+ message.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.fromObject(object.slsaProvenanceZeroTwo);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an InTotoStatement message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {grafeas.v1.InTotoStatement} message InTotoStatement
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ InTotoStatement.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.subject = [];
+ if (options.defaults) {
+ object.type = "";
+ object.predicateType = "";
+ }
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = message.type;
+ if (message.subject && message.subject.length) {
+ object.subject = [];
+ for (var j = 0; j < message.subject.length; ++j)
+ object.subject[j] = $root.grafeas.v1.Subject.toObject(message.subject[j], options);
+ }
+ if (message.predicateType != null && message.hasOwnProperty("predicateType"))
+ object.predicateType = message.predicateType;
+ if (message.provenance != null && message.hasOwnProperty("provenance")) {
+ object.provenance = $root.grafeas.v1.InTotoProvenance.toObject(message.provenance, options);
+ if (options.oneofs)
+ object.predicate = "provenance";
+ }
+ if (message.slsaProvenance != null && message.hasOwnProperty("slsaProvenance")) {
+ object.slsaProvenance = $root.grafeas.v1.SlsaProvenance.toObject(message.slsaProvenance, options);
+ if (options.oneofs)
+ object.predicate = "slsaProvenance";
+ }
+ if (message.slsaProvenanceZeroTwo != null && message.hasOwnProperty("slsaProvenanceZeroTwo")) {
+ object.slsaProvenanceZeroTwo = $root.grafeas.v1.SlsaProvenanceZeroTwo.toObject(message.slsaProvenanceZeroTwo, options);
+ if (options.oneofs)
+ object.predicate = "slsaProvenanceZeroTwo";
+ }
+ return object;
+ };
+
+ /**
+ * Converts this InTotoStatement to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.InTotoStatement
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ InTotoStatement.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for InTotoStatement
+ * @function getTypeUrl
+ * @memberof grafeas.v1.InTotoStatement
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ InTotoStatement.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.InTotoStatement";
+ };
+
+ return InTotoStatement;
+ })();
+
+ v1.Subject = (function() {
+
+ /**
+ * Properties of a Subject.
+ * @memberof grafeas.v1
+ * @interface ISubject
+ * @property {string|null} [name] Subject name
+ * @property {Object.|null} [digest] Subject digest
+ */
+
+ /**
+ * Constructs a new Subject.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Subject.
+ * @implements ISubject
+ * @constructor
+ * @param {grafeas.v1.ISubject=} [properties] Properties to set
+ */
+ function Subject(properties) {
+ this.digest = {};
+ 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]];
+ }
+
+ /**
+ * Subject name.
+ * @member {string} name
+ * @memberof grafeas.v1.Subject
+ * @instance
+ */
+ Subject.prototype.name = "";
+
+ /**
+ * Subject digest.
+ * @member {Object.} digest
+ * @memberof grafeas.v1.Subject
+ * @instance
+ */
+ Subject.prototype.digest = $util.emptyObject;
+
+ /**
+ * Creates a new Subject instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {grafeas.v1.ISubject=} [properties] Properties to set
+ * @returns {grafeas.v1.Subject} Subject instance
+ */
+ Subject.create = function create(properties) {
+ return new Subject(properties);
+ };
+
+ /**
+ * Encodes the specified Subject message. Does not implicitly {@link grafeas.v1.Subject.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {grafeas.v1.ISubject} message Subject message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Subject.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.digest != null && Object.hasOwnProperty.call(message, "digest"))
+ for (var keys = Object.keys(message.digest), 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.digest[keys[i]]).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Subject message, length delimited. Does not implicitly {@link grafeas.v1.Subject.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {grafeas.v1.ISubject} message Subject message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Subject.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Subject message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Subject} Subject
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Subject.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.grafeas.v1.Subject(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ if (message.digest === $util.emptyObject)
+ message.digest = {};
+ 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.digest[key] = value;
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Subject message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Subject} Subject
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Subject.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Subject message.
+ * @function verify
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Subject.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.digest != null && message.hasOwnProperty("digest")) {
+ if (!$util.isObject(message.digest))
+ return "digest: object expected";
+ var key = Object.keys(message.digest);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.digest[key[i]]))
+ return "digest: string{k:string} expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Subject message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Subject} Subject
+ */
+ Subject.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Subject)
+ return object;
+ var message = new $root.grafeas.v1.Subject();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.digest) {
+ if (typeof object.digest !== "object")
+ throw TypeError(".grafeas.v1.Subject.digest: object expected");
+ message.digest = {};
+ for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i)
+ message.digest[keys[i]] = String(object.digest[keys[i]]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Subject message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {grafeas.v1.Subject} message Subject
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Subject.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.digest = {};
+ if (options.defaults)
+ object.name = "";
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ var keys2;
+ if (message.digest && (keys2 = Object.keys(message.digest)).length) {
+ object.digest = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.digest[keys2[j]] = message.digest[keys2[j]];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Subject to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Subject
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Subject.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Subject
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Subject
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Subject.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Subject";
+ };
+
+ return Subject;
+ })();
+
+ v1.SlsaProvenance = (function() {
+
+ /**
+ * Properties of a SlsaProvenance.
+ * @memberof grafeas.v1
+ * @interface ISlsaProvenance
+ * @property {grafeas.v1.SlsaProvenance.ISlsaBuilder|null} [builder] SlsaProvenance builder
+ * @property {grafeas.v1.SlsaProvenance.ISlsaRecipe|null} [recipe] SlsaProvenance recipe
+ * @property {grafeas.v1.SlsaProvenance.ISlsaMetadata|null} [metadata] SlsaProvenance metadata
+ * @property {Array.|null} [materials] SlsaProvenance materials
+ */
+
+ /**
+ * Constructs a new SlsaProvenance.
+ * @memberof grafeas.v1
+ * @classdesc Represents a SlsaProvenance.
+ * @implements ISlsaProvenance
+ * @constructor
+ * @param {grafeas.v1.ISlsaProvenance=} [properties] Properties to set
+ */
+ function SlsaProvenance(properties) {
+ this.materials = [];
+ 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]];
+ }
+
+ /**
+ * SlsaProvenance builder.
+ * @member {grafeas.v1.SlsaProvenance.ISlsaBuilder|null|undefined} builder
+ * @memberof grafeas.v1.SlsaProvenance
+ * @instance
+ */
+ SlsaProvenance.prototype.builder = null;
+
+ /**
+ * SlsaProvenance recipe.
+ * @member {grafeas.v1.SlsaProvenance.ISlsaRecipe|null|undefined} recipe
+ * @memberof grafeas.v1.SlsaProvenance
+ * @instance
+ */
+ SlsaProvenance.prototype.recipe = null;
+
+ /**
+ * SlsaProvenance metadata.
+ * @member {grafeas.v1.SlsaProvenance.ISlsaMetadata|null|undefined} metadata
+ * @memberof grafeas.v1.SlsaProvenance
+ * @instance
+ */
+ SlsaProvenance.prototype.metadata = null;
+
+ /**
+ * SlsaProvenance materials.
+ * @member {Array.} materials
+ * @memberof grafeas.v1.SlsaProvenance
+ * @instance
+ */
+ SlsaProvenance.prototype.materials = $util.emptyArray;
+
+ /**
+ * Creates a new SlsaProvenance instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {grafeas.v1.ISlsaProvenance=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenance} SlsaProvenance instance
+ */
+ SlsaProvenance.create = function create(properties) {
+ return new SlsaProvenance(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaProvenance message. Does not implicitly {@link grafeas.v1.SlsaProvenance.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {grafeas.v1.ISlsaProvenance} message SlsaProvenance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaProvenance.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.builder != null && Object.hasOwnProperty.call(message, "builder"))
+ $root.grafeas.v1.SlsaProvenance.SlsaBuilder.encode(message.builder, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.recipe != null && Object.hasOwnProperty.call(message, "recipe"))
+ $root.grafeas.v1.SlsaProvenance.SlsaRecipe.encode(message.recipe, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.metadata != null && Object.hasOwnProperty.call(message, "metadata"))
+ $root.grafeas.v1.SlsaProvenance.SlsaMetadata.encode(message.metadata, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.materials != null && message.materials.length)
+ for (var i = 0; i < message.materials.length; ++i)
+ $root.grafeas.v1.SlsaProvenance.Material.encode(message.materials[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaProvenance message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {grafeas.v1.ISlsaProvenance} message SlsaProvenance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaProvenance.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaProvenance message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenance} SlsaProvenance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaProvenance.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.grafeas.v1.SlsaProvenance();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (!(message.materials && message.materials.length))
+ message.materials = [];
+ message.materials.push($root.grafeas.v1.SlsaProvenance.Material.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaProvenance message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenance} SlsaProvenance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaProvenance.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaProvenance message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaProvenance.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.builder != null && message.hasOwnProperty("builder")) {
+ var error = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.verify(message.builder);
+ if (error)
+ return "builder." + error;
+ }
+ if (message.recipe != null && message.hasOwnProperty("recipe")) {
+ var error = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.verify(message.recipe);
+ if (error)
+ return "recipe." + error;
+ }
+ if (message.metadata != null && message.hasOwnProperty("metadata")) {
+ var error = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.verify(message.metadata);
+ if (error)
+ return "metadata." + error;
+ }
+ if (message.materials != null && message.hasOwnProperty("materials")) {
+ if (!Array.isArray(message.materials))
+ return "materials: array expected";
+ for (var i = 0; i < message.materials.length; ++i) {
+ var error = $root.grafeas.v1.SlsaProvenance.Material.verify(message.materials[i]);
+ if (error)
+ return "materials." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SlsaProvenance message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenance} SlsaProvenance
+ */
+ SlsaProvenance.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenance)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenance();
+ if (object.builder != null) {
+ if (typeof object.builder !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.builder: object expected");
+ message.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.fromObject(object.builder);
+ }
+ if (object.recipe != null) {
+ if (typeof object.recipe !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.recipe: object expected");
+ message.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.fromObject(object.recipe);
+ }
+ if (object.metadata != null) {
+ if (typeof object.metadata !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.metadata: object expected");
+ message.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.fromObject(object.metadata);
+ }
+ if (object.materials) {
+ if (!Array.isArray(object.materials))
+ throw TypeError(".grafeas.v1.SlsaProvenance.materials: array expected");
+ message.materials = [];
+ for (var i = 0; i < object.materials.length; ++i) {
+ if (typeof object.materials[i] !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.materials: object expected");
+ message.materials[i] = $root.grafeas.v1.SlsaProvenance.Material.fromObject(object.materials[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaProvenance message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {grafeas.v1.SlsaProvenance} message SlsaProvenance
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaProvenance.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.materials = [];
+ if (options.defaults) {
+ object.builder = null;
+ object.recipe = null;
+ object.metadata = null;
+ }
+ if (message.builder != null && message.hasOwnProperty("builder"))
+ object.builder = $root.grafeas.v1.SlsaProvenance.SlsaBuilder.toObject(message.builder, options);
+ if (message.recipe != null && message.hasOwnProperty("recipe"))
+ object.recipe = $root.grafeas.v1.SlsaProvenance.SlsaRecipe.toObject(message.recipe, options);
+ if (message.metadata != null && message.hasOwnProperty("metadata"))
+ object.metadata = $root.grafeas.v1.SlsaProvenance.SlsaMetadata.toObject(message.metadata, options);
+ if (message.materials && message.materials.length) {
+ object.materials = [];
+ for (var j = 0; j < message.materials.length; ++j)
+ object.materials[j] = $root.grafeas.v1.SlsaProvenance.Material.toObject(message.materials[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this SlsaProvenance to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenance
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaProvenance.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaProvenance
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenance
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaProvenance.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenance";
+ };
+
+ SlsaProvenance.SlsaRecipe = (function() {
+
+ /**
+ * Properties of a SlsaRecipe.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @interface ISlsaRecipe
+ * @property {string|null} [type] SlsaRecipe type
+ * @property {number|Long|null} [definedInMaterial] SlsaRecipe definedInMaterial
+ * @property {string|null} [entryPoint] SlsaRecipe entryPoint
+ * @property {google.protobuf.IAny|null} ["arguments"] SlsaRecipe arguments
+ * @property {google.protobuf.IAny|null} [environment] SlsaRecipe environment
+ */
+
+ /**
+ * Constructs a new SlsaRecipe.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @classdesc Represents a SlsaRecipe.
+ * @implements ISlsaRecipe
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenance.ISlsaRecipe=} [properties] Properties to set
+ */
+ function SlsaRecipe(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]];
+ }
+
+ /**
+ * SlsaRecipe type.
+ * @member {string} type
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @instance
+ */
+ SlsaRecipe.prototype.type = "";
+
+ /**
+ * SlsaRecipe definedInMaterial.
+ * @member {number|Long} definedInMaterial
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @instance
+ */
+ SlsaRecipe.prototype.definedInMaterial = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
+
+ /**
+ * SlsaRecipe entryPoint.
+ * @member {string} entryPoint
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @instance
+ */
+ SlsaRecipe.prototype.entryPoint = "";
+
+ /**
+ * SlsaRecipe arguments.
+ * @member {google.protobuf.IAny|null|undefined} arguments
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @instance
+ */
+ SlsaRecipe.prototype["arguments"] = null;
+
+ /**
+ * SlsaRecipe environment.
+ * @member {google.protobuf.IAny|null|undefined} environment
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @instance
+ */
+ SlsaRecipe.prototype.environment = null;
+
+ /**
+ * Creates a new SlsaRecipe instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaRecipe=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenance.SlsaRecipe} SlsaRecipe instance
+ */
+ SlsaRecipe.create = function create(properties) {
+ return new SlsaRecipe(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaRecipe message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaRecipe.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaRecipe} message SlsaRecipe message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaRecipe.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.type);
+ if (message.definedInMaterial != null && Object.hasOwnProperty.call(message, "definedInMaterial"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int64(message.definedInMaterial);
+ if (message.entryPoint != null && Object.hasOwnProperty.call(message, "entryPoint"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.entryPoint);
+ if (message["arguments"] != null && Object.hasOwnProperty.call(message, "arguments"))
+ $root.google.protobuf.Any.encode(message["arguments"], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.environment != null && Object.hasOwnProperty.call(message, "environment"))
+ $root.google.protobuf.Any.encode(message.environment, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaRecipe message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaRecipe.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaRecipe} message SlsaRecipe message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaRecipe.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaRecipe message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenance.SlsaRecipe} SlsaRecipe
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaRecipe.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.grafeas.v1.SlsaProvenance.SlsaRecipe();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.type = reader.string();
+ break;
+ }
+ case 2: {
+ message.definedInMaterial = reader.int64();
+ break;
+ }
+ case 3: {
+ message.entryPoint = reader.string();
+ break;
+ }
+ case 4: {
+ message["arguments"] = $root.google.protobuf.Any.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.environment = $root.google.protobuf.Any.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaRecipe message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenance.SlsaRecipe} SlsaRecipe
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaRecipe.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaRecipe message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaRecipe.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.type != null && message.hasOwnProperty("type"))
+ if (!$util.isString(message.type))
+ return "type: string expected";
+ if (message.definedInMaterial != null && message.hasOwnProperty("definedInMaterial"))
+ if (!$util.isInteger(message.definedInMaterial) && !(message.definedInMaterial && $util.isInteger(message.definedInMaterial.low) && $util.isInteger(message.definedInMaterial.high)))
+ return "definedInMaterial: integer|Long expected";
+ if (message.entryPoint != null && message.hasOwnProperty("entryPoint"))
+ if (!$util.isString(message.entryPoint))
+ return "entryPoint: string expected";
+ if (message["arguments"] != null && message.hasOwnProperty("arguments")) {
+ var error = $root.google.protobuf.Any.verify(message["arguments"]);
+ if (error)
+ return "arguments." + error;
+ }
+ if (message.environment != null && message.hasOwnProperty("environment")) {
+ var error = $root.google.protobuf.Any.verify(message.environment);
+ if (error)
+ return "environment." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SlsaRecipe message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenance.SlsaRecipe} SlsaRecipe
+ */
+ SlsaRecipe.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaRecipe)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenance.SlsaRecipe();
+ if (object.type != null)
+ message.type = String(object.type);
+ if (object.definedInMaterial != null)
+ if ($util.Long)
+ (message.definedInMaterial = $util.Long.fromValue(object.definedInMaterial)).unsigned = false;
+ else if (typeof object.definedInMaterial === "string")
+ message.definedInMaterial = parseInt(object.definedInMaterial, 10);
+ else if (typeof object.definedInMaterial === "number")
+ message.definedInMaterial = object.definedInMaterial;
+ else if (typeof object.definedInMaterial === "object")
+ message.definedInMaterial = new $util.LongBits(object.definedInMaterial.low >>> 0, object.definedInMaterial.high >>> 0).toNumber();
+ if (object.entryPoint != null)
+ message.entryPoint = String(object.entryPoint);
+ if (object["arguments"] != null) {
+ if (typeof object["arguments"] !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.SlsaRecipe.arguments: object expected");
+ message["arguments"] = $root.google.protobuf.Any.fromObject(object["arguments"]);
+ }
+ if (object.environment != null) {
+ if (typeof object.environment !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.SlsaRecipe.environment: object expected");
+ message.environment = $root.google.protobuf.Any.fromObject(object.environment);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaRecipe message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.SlsaRecipe} message SlsaRecipe
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaRecipe.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.type = "";
+ if ($util.Long) {
+ var long = new $util.Long(0, 0, false);
+ object.definedInMaterial = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
+ } else
+ object.definedInMaterial = options.longs === String ? "0" : 0;
+ object.entryPoint = "";
+ object["arguments"] = null;
+ object.environment = null;
+ }
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = message.type;
+ if (message.definedInMaterial != null && message.hasOwnProperty("definedInMaterial"))
+ if (typeof message.definedInMaterial === "number")
+ object.definedInMaterial = options.longs === String ? String(message.definedInMaterial) : message.definedInMaterial;
+ else
+ object.definedInMaterial = options.longs === String ? $util.Long.prototype.toString.call(message.definedInMaterial) : options.longs === Number ? new $util.LongBits(message.definedInMaterial.low >>> 0, message.definedInMaterial.high >>> 0).toNumber() : message.definedInMaterial;
+ if (message.entryPoint != null && message.hasOwnProperty("entryPoint"))
+ object.entryPoint = message.entryPoint;
+ if (message["arguments"] != null && message.hasOwnProperty("arguments"))
+ object["arguments"] = $root.google.protobuf.Any.toObject(message["arguments"], options);
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ object.environment = $root.google.protobuf.Any.toObject(message.environment, options);
+ return object;
+ };
+
+ /**
+ * Converts this SlsaRecipe to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaRecipe.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaRecipe
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenance.SlsaRecipe
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaRecipe.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenance.SlsaRecipe";
+ };
+
+ return SlsaRecipe;
+ })();
+
+ SlsaProvenance.SlsaCompleteness = (function() {
+
+ /**
+ * Properties of a SlsaCompleteness.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @interface ISlsaCompleteness
+ * @property {boolean|null} ["arguments"] SlsaCompleteness arguments
+ * @property {boolean|null} [environment] SlsaCompleteness environment
+ * @property {boolean|null} [materials] SlsaCompleteness materials
+ */
+
+ /**
+ * Constructs a new SlsaCompleteness.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @classdesc Represents a SlsaCompleteness.
+ * @implements ISlsaCompleteness
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenance.ISlsaCompleteness=} [properties] Properties to set
+ */
+ function SlsaCompleteness(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]];
+ }
+
+ /**
+ * SlsaCompleteness arguments.
+ * @member {boolean} arguments
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @instance
+ */
+ SlsaCompleteness.prototype["arguments"] = false;
+
+ /**
+ * SlsaCompleteness environment.
+ * @member {boolean} environment
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @instance
+ */
+ SlsaCompleteness.prototype.environment = false;
+
+ /**
+ * SlsaCompleteness materials.
+ * @member {boolean} materials
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @instance
+ */
+ SlsaCompleteness.prototype.materials = false;
+
+ /**
+ * Creates a new SlsaCompleteness instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaCompleteness=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenance.SlsaCompleteness} SlsaCompleteness instance
+ */
+ SlsaCompleteness.create = function create(properties) {
+ return new SlsaCompleteness(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaCompleteness message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaCompleteness.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaCompleteness} message SlsaCompleteness message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaCompleteness.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message["arguments"] != null && Object.hasOwnProperty.call(message, "arguments"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message["arguments"]);
+ if (message.environment != null && Object.hasOwnProperty.call(message, "environment"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.environment);
+ if (message.materials != null && Object.hasOwnProperty.call(message, "materials"))
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.materials);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaCompleteness message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaCompleteness.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaCompleteness} message SlsaCompleteness message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaCompleteness.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenance.SlsaCompleteness} SlsaCompleteness
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaCompleteness.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.grafeas.v1.SlsaProvenance.SlsaCompleteness();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message["arguments"] = reader.bool();
+ break;
+ }
+ case 2: {
+ message.environment = reader.bool();
+ break;
+ }
+ case 3: {
+ message.materials = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenance.SlsaCompleteness} SlsaCompleteness
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaCompleteness.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaCompleteness message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaCompleteness.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message["arguments"] != null && message.hasOwnProperty("arguments"))
+ if (typeof message["arguments"] !== "boolean")
+ return "arguments: boolean expected";
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ if (typeof message.environment !== "boolean")
+ return "environment: boolean expected";
+ if (message.materials != null && message.hasOwnProperty("materials"))
+ if (typeof message.materials !== "boolean")
+ return "materials: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaCompleteness message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenance.SlsaCompleteness} SlsaCompleteness
+ */
+ SlsaCompleteness.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaCompleteness)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenance.SlsaCompleteness();
+ if (object["arguments"] != null)
+ message["arguments"] = Boolean(object["arguments"]);
+ if (object.environment != null)
+ message.environment = Boolean(object.environment);
+ if (object.materials != null)
+ message.materials = Boolean(object.materials);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaCompleteness message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.SlsaCompleteness} message SlsaCompleteness
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaCompleteness.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object["arguments"] = false;
+ object.environment = false;
+ object.materials = false;
+ }
+ if (message["arguments"] != null && message.hasOwnProperty("arguments"))
+ object["arguments"] = message["arguments"];
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ object.environment = message.environment;
+ if (message.materials != null && message.hasOwnProperty("materials"))
+ object.materials = message.materials;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaCompleteness to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaCompleteness.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaCompleteness
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenance.SlsaCompleteness
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaCompleteness.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenance.SlsaCompleteness";
+ };
+
+ return SlsaCompleteness;
+ })();
+
+ SlsaProvenance.SlsaMetadata = (function() {
+
+ /**
+ * Properties of a SlsaMetadata.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @interface ISlsaMetadata
+ * @property {string|null} [buildInvocationId] SlsaMetadata buildInvocationId
+ * @property {google.protobuf.ITimestamp|null} [buildStartedOn] SlsaMetadata buildStartedOn
+ * @property {google.protobuf.ITimestamp|null} [buildFinishedOn] SlsaMetadata buildFinishedOn
+ * @property {grafeas.v1.SlsaProvenance.ISlsaCompleteness|null} [completeness] SlsaMetadata completeness
+ * @property {boolean|null} [reproducible] SlsaMetadata reproducible
+ */
+
+ /**
+ * Constructs a new SlsaMetadata.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @classdesc Represents a SlsaMetadata.
+ * @implements ISlsaMetadata
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenance.ISlsaMetadata=} [properties] Properties to set
+ */
+ function SlsaMetadata(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]];
+ }
+
+ /**
+ * SlsaMetadata buildInvocationId.
+ * @member {string} buildInvocationId
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.buildInvocationId = "";
+
+ /**
+ * SlsaMetadata buildStartedOn.
+ * @member {google.protobuf.ITimestamp|null|undefined} buildStartedOn
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.buildStartedOn = null;
+
+ /**
+ * SlsaMetadata buildFinishedOn.
+ * @member {google.protobuf.ITimestamp|null|undefined} buildFinishedOn
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.buildFinishedOn = null;
+
+ /**
+ * SlsaMetadata completeness.
+ * @member {grafeas.v1.SlsaProvenance.ISlsaCompleteness|null|undefined} completeness
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.completeness = null;
+
+ /**
+ * SlsaMetadata reproducible.
+ * @member {boolean} reproducible
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.reproducible = false;
+
+ /**
+ * Creates a new SlsaMetadata instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaMetadata=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenance.SlsaMetadata} SlsaMetadata instance
+ */
+ SlsaMetadata.create = function create(properties) {
+ return new SlsaMetadata(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaMetadata message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaMetadata.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaMetadata} message SlsaMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaMetadata.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.buildInvocationId != null && Object.hasOwnProperty.call(message, "buildInvocationId"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.buildInvocationId);
+ if (message.buildStartedOn != null && Object.hasOwnProperty.call(message, "buildStartedOn"))
+ $root.google.protobuf.Timestamp.encode(message.buildStartedOn, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.buildFinishedOn != null && Object.hasOwnProperty.call(message, "buildFinishedOn"))
+ $root.google.protobuf.Timestamp.encode(message.buildFinishedOn, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.completeness != null && Object.hasOwnProperty.call(message, "completeness"))
+ $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.encode(message.completeness, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.reproducible != null && Object.hasOwnProperty.call(message, "reproducible"))
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.reproducible);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaMetadata message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaMetadata.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaMetadata} message SlsaMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaMetadata.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenance.SlsaMetadata} SlsaMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaMetadata.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.grafeas.v1.SlsaProvenance.SlsaMetadata();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.buildInvocationId = reader.string();
+ break;
+ }
+ case 2: {
+ message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.reproducible = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenance.SlsaMetadata} SlsaMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaMetadata.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaMetadata message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaMetadata.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId"))
+ if (!$util.isString(message.buildInvocationId))
+ return "buildInvocationId: string expected";
+ if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn);
+ if (error)
+ return "buildStartedOn." + error;
+ }
+ if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn);
+ if (error)
+ return "buildFinishedOn." + error;
+ }
+ if (message.completeness != null && message.hasOwnProperty("completeness")) {
+ var error = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.verify(message.completeness);
+ if (error)
+ return "completeness." + error;
+ }
+ if (message.reproducible != null && message.hasOwnProperty("reproducible"))
+ if (typeof message.reproducible !== "boolean")
+ return "reproducible: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaMetadata message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenance.SlsaMetadata} SlsaMetadata
+ */
+ SlsaMetadata.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaMetadata)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenance.SlsaMetadata();
+ if (object.buildInvocationId != null)
+ message.buildInvocationId = String(object.buildInvocationId);
+ if (object.buildStartedOn != null) {
+ if (typeof object.buildStartedOn !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.SlsaMetadata.buildStartedOn: object expected");
+ message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn);
+ }
+ if (object.buildFinishedOn != null) {
+ if (typeof object.buildFinishedOn !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.SlsaMetadata.buildFinishedOn: object expected");
+ message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn);
+ }
+ if (object.completeness != null) {
+ if (typeof object.completeness !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.SlsaMetadata.completeness: object expected");
+ message.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.fromObject(object.completeness);
+ }
+ if (object.reproducible != null)
+ message.reproducible = Boolean(object.reproducible);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaMetadata message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.SlsaMetadata} message SlsaMetadata
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaMetadata.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.buildInvocationId = "";
+ object.buildStartedOn = null;
+ object.buildFinishedOn = null;
+ object.completeness = null;
+ object.reproducible = false;
+ }
+ if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId"))
+ object.buildInvocationId = message.buildInvocationId;
+ if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn"))
+ object.buildStartedOn = $root.google.protobuf.Timestamp.toObject(message.buildStartedOn, options);
+ if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn"))
+ object.buildFinishedOn = $root.google.protobuf.Timestamp.toObject(message.buildFinishedOn, options);
+ if (message.completeness != null && message.hasOwnProperty("completeness"))
+ object.completeness = $root.grafeas.v1.SlsaProvenance.SlsaCompleteness.toObject(message.completeness, options);
+ if (message.reproducible != null && message.hasOwnProperty("reproducible"))
+ object.reproducible = message.reproducible;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaMetadata to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaMetadata.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaMetadata
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenance.SlsaMetadata
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenance.SlsaMetadata";
+ };
+
+ return SlsaMetadata;
+ })();
+
+ SlsaProvenance.SlsaBuilder = (function() {
+
+ /**
+ * Properties of a SlsaBuilder.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @interface ISlsaBuilder
+ * @property {string|null} [id] SlsaBuilder id
+ */
+
+ /**
+ * Constructs a new SlsaBuilder.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @classdesc Represents a SlsaBuilder.
+ * @implements ISlsaBuilder
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenance.ISlsaBuilder=} [properties] Properties to set
+ */
+ function SlsaBuilder(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]];
+ }
+
+ /**
+ * SlsaBuilder id.
+ * @member {string} id
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @instance
+ */
+ SlsaBuilder.prototype.id = "";
+
+ /**
+ * Creates a new SlsaBuilder instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaBuilder=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenance.SlsaBuilder} SlsaBuilder instance
+ */
+ SlsaBuilder.create = function create(properties) {
+ return new SlsaBuilder(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaBuilder message. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaBuilder.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaBuilder} message SlsaBuilder message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaBuilder.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaBuilder message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.SlsaBuilder.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.ISlsaBuilder} message SlsaBuilder message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaBuilder.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenance.SlsaBuilder} SlsaBuilder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaBuilder.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.grafeas.v1.SlsaProvenance.SlsaBuilder();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.id = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenance.SlsaBuilder} SlsaBuilder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaBuilder.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaBuilder message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaBuilder.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.id != null && message.hasOwnProperty("id"))
+ if (!$util.isString(message.id))
+ return "id: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaBuilder message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenance.SlsaBuilder} SlsaBuilder
+ */
+ SlsaBuilder.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenance.SlsaBuilder)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenance.SlsaBuilder();
+ if (object.id != null)
+ message.id = String(object.id);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaBuilder message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.SlsaBuilder} message SlsaBuilder
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaBuilder.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.id = "";
+ if (message.id != null && message.hasOwnProperty("id"))
+ object.id = message.id;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaBuilder to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaBuilder.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaBuilder
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenance.SlsaBuilder
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaBuilder.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenance.SlsaBuilder";
+ };
+
+ return SlsaBuilder;
+ })();
+
+ SlsaProvenance.Material = (function() {
+
+ /**
+ * Properties of a Material.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @interface IMaterial
+ * @property {string|null} [uri] Material uri
+ * @property {Object.|null} [digest] Material digest
+ */
+
+ /**
+ * Constructs a new Material.
+ * @memberof grafeas.v1.SlsaProvenance
+ * @classdesc Represents a Material.
+ * @implements IMaterial
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenance.IMaterial=} [properties] Properties to set
+ */
+ function Material(properties) {
+ this.digest = {};
+ 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]];
+ }
+
+ /**
+ * Material uri.
+ * @member {string} uri
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @instance
+ */
+ Material.prototype.uri = "";
+
+ /**
+ * Material digest.
+ * @member {Object.} digest
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @instance
+ */
+ Material.prototype.digest = $util.emptyObject;
+
+ /**
+ * Creates a new Material instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.IMaterial=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenance.Material} Material instance
+ */
+ Material.create = function create(properties) {
+ return new Material(properties);
+ };
+
+ /**
+ * Encodes the specified Material message. Does not implicitly {@link grafeas.v1.SlsaProvenance.Material.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.IMaterial} message Material message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Material.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.uri != null && Object.hasOwnProperty.call(message, "uri"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.uri);
+ if (message.digest != null && Object.hasOwnProperty.call(message, "digest"))
+ for (var keys = Object.keys(message.digest), 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.digest[keys[i]]).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Material message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenance.Material.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.IMaterial} message Material message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Material.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Material message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenance.Material} Material
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Material.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.grafeas.v1.SlsaProvenance.Material(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.uri = reader.string();
+ break;
+ }
+ case 2: {
+ if (message.digest === $util.emptyObject)
+ message.digest = {};
+ 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.digest[key] = value;
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Material message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenance.Material} Material
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Material.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Material message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Material.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ if (!$util.isString(message.uri))
+ return "uri: string expected";
+ if (message.digest != null && message.hasOwnProperty("digest")) {
+ if (!$util.isObject(message.digest))
+ return "digest: object expected";
+ var key = Object.keys(message.digest);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.digest[key[i]]))
+ return "digest: string{k:string} expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Material message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenance.Material} Material
+ */
+ Material.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenance.Material)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenance.Material();
+ if (object.uri != null)
+ message.uri = String(object.uri);
+ if (object.digest) {
+ if (typeof object.digest !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenance.Material.digest: object expected");
+ message.digest = {};
+ for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i)
+ message.digest[keys[i]] = String(object.digest[keys[i]]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Material message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {grafeas.v1.SlsaProvenance.Material} message Material
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Material.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.digest = {};
+ if (options.defaults)
+ object.uri = "";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ object.uri = message.uri;
+ var keys2;
+ if (message.digest && (keys2 = Object.keys(message.digest)).length) {
+ object.digest = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.digest[keys2[j]] = message.digest[keys2[j]];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Material to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Material.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Material
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenance.Material
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Material.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenance.Material";
+ };
+
+ return Material;
+ })();
+
+ return SlsaProvenance;
+ })();
+
+ v1.SlsaProvenanceZeroTwo = (function() {
+
+ /**
+ * Properties of a SlsaProvenanceZeroTwo.
+ * @memberof grafeas.v1
+ * @interface ISlsaProvenanceZeroTwo
+ * @property {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder|null} [builder] SlsaProvenanceZeroTwo builder
+ * @property {string|null} [buildType] SlsaProvenanceZeroTwo buildType
+ * @property {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation|null} [invocation] SlsaProvenanceZeroTwo invocation
+ * @property {google.protobuf.IStruct|null} [buildConfig] SlsaProvenanceZeroTwo buildConfig
+ * @property {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata|null} [metadata] SlsaProvenanceZeroTwo metadata
+ * @property {Array.|null} [materials] SlsaProvenanceZeroTwo materials
+ */
+
+ /**
+ * Constructs a new SlsaProvenanceZeroTwo.
+ * @memberof grafeas.v1
+ * @classdesc Represents a SlsaProvenanceZeroTwo.
+ * @implements ISlsaProvenanceZeroTwo
+ * @constructor
+ * @param {grafeas.v1.ISlsaProvenanceZeroTwo=} [properties] Properties to set
+ */
+ function SlsaProvenanceZeroTwo(properties) {
+ this.materials = [];
+ 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]];
+ }
+
+ /**
+ * SlsaProvenanceZeroTwo builder.
+ * @member {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder|null|undefined} builder
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ */
+ SlsaProvenanceZeroTwo.prototype.builder = null;
+
+ /**
+ * SlsaProvenanceZeroTwo buildType.
+ * @member {string} buildType
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ */
+ SlsaProvenanceZeroTwo.prototype.buildType = "";
+
+ /**
+ * SlsaProvenanceZeroTwo invocation.
+ * @member {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation|null|undefined} invocation
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ */
+ SlsaProvenanceZeroTwo.prototype.invocation = null;
+
+ /**
+ * SlsaProvenanceZeroTwo buildConfig.
+ * @member {google.protobuf.IStruct|null|undefined} buildConfig
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ */
+ SlsaProvenanceZeroTwo.prototype.buildConfig = null;
+
+ /**
+ * SlsaProvenanceZeroTwo metadata.
+ * @member {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata|null|undefined} metadata
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ */
+ SlsaProvenanceZeroTwo.prototype.metadata = null;
+
+ /**
+ * SlsaProvenanceZeroTwo materials.
+ * @member {Array.} materials
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ */
+ SlsaProvenanceZeroTwo.prototype.materials = $util.emptyArray;
+
+ /**
+ * Creates a new SlsaProvenanceZeroTwo instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {grafeas.v1.ISlsaProvenanceZeroTwo=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo} SlsaProvenanceZeroTwo instance
+ */
+ SlsaProvenanceZeroTwo.create = function create(properties) {
+ return new SlsaProvenanceZeroTwo(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaProvenanceZeroTwo message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {grafeas.v1.ISlsaProvenanceZeroTwo} message SlsaProvenanceZeroTwo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaProvenanceZeroTwo.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.builder != null && Object.hasOwnProperty.call(message, "builder"))
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.encode(message.builder, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.buildType != null && Object.hasOwnProperty.call(message, "buildType"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.buildType);
+ if (message.invocation != null && Object.hasOwnProperty.call(message, "invocation"))
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.encode(message.invocation, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.buildConfig != null && Object.hasOwnProperty.call(message, "buildConfig"))
+ $root.google.protobuf.Struct.encode(message.buildConfig, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.metadata != null && Object.hasOwnProperty.call(message, "metadata"))
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.encode(message.metadata, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.materials != null && message.materials.length)
+ for (var i = 0; i < message.materials.length; ++i)
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.encode(message.materials[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaProvenanceZeroTwo message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {grafeas.v1.ISlsaProvenanceZeroTwo} message SlsaProvenanceZeroTwo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaProvenanceZeroTwo.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaProvenanceZeroTwo message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo} SlsaProvenanceZeroTwo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaProvenanceZeroTwo.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.grafeas.v1.SlsaProvenanceZeroTwo();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.buildType = reader.string();
+ break;
+ }
+ case 3: {
+ message.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.buildConfig = $root.google.protobuf.Struct.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ if (!(message.materials && message.materials.length))
+ message.materials = [];
+ message.materials.push($root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaProvenanceZeroTwo message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo} SlsaProvenanceZeroTwo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaProvenanceZeroTwo.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaProvenanceZeroTwo message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaProvenanceZeroTwo.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.builder != null && message.hasOwnProperty("builder")) {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify(message.builder);
+ if (error)
+ return "builder." + error;
+ }
+ if (message.buildType != null && message.hasOwnProperty("buildType"))
+ if (!$util.isString(message.buildType))
+ return "buildType: string expected";
+ if (message.invocation != null && message.hasOwnProperty("invocation")) {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify(message.invocation);
+ if (error)
+ return "invocation." + error;
+ }
+ if (message.buildConfig != null && message.hasOwnProperty("buildConfig")) {
+ var error = $root.google.protobuf.Struct.verify(message.buildConfig);
+ if (error)
+ return "buildConfig." + error;
+ }
+ if (message.metadata != null && message.hasOwnProperty("metadata")) {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify(message.metadata);
+ if (error)
+ return "metadata." + error;
+ }
+ if (message.materials != null && message.hasOwnProperty("materials")) {
+ if (!Array.isArray(message.materials))
+ return "materials: array expected";
+ for (var i = 0; i < message.materials.length; ++i) {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify(message.materials[i]);
+ if (error)
+ return "materials." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SlsaProvenanceZeroTwo message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo} SlsaProvenanceZeroTwo
+ */
+ SlsaProvenanceZeroTwo.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo();
+ if (object.builder != null) {
+ if (typeof object.builder !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.builder: object expected");
+ message.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.fromObject(object.builder);
+ }
+ if (object.buildType != null)
+ message.buildType = String(object.buildType);
+ if (object.invocation != null) {
+ if (typeof object.invocation !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.invocation: object expected");
+ message.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.fromObject(object.invocation);
+ }
+ if (object.buildConfig != null) {
+ if (typeof object.buildConfig !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.buildConfig: object expected");
+ message.buildConfig = $root.google.protobuf.Struct.fromObject(object.buildConfig);
+ }
+ if (object.metadata != null) {
+ if (typeof object.metadata !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.metadata: object expected");
+ message.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.fromObject(object.metadata);
+ }
+ if (object.materials) {
+ if (!Array.isArray(object.materials))
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.materials: array expected");
+ message.materials = [];
+ for (var i = 0; i < object.materials.length; ++i) {
+ if (typeof object.materials[i] !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.materials: object expected");
+ message.materials[i] = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.fromObject(object.materials[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaProvenanceZeroTwo message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo} message SlsaProvenanceZeroTwo
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaProvenanceZeroTwo.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.materials = [];
+ if (options.defaults) {
+ object.builder = null;
+ object.buildType = "";
+ object.invocation = null;
+ object.buildConfig = null;
+ object.metadata = null;
+ }
+ if (message.builder != null && message.hasOwnProperty("builder"))
+ object.builder = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.toObject(message.builder, options);
+ if (message.buildType != null && message.hasOwnProperty("buildType"))
+ object.buildType = message.buildType;
+ if (message.invocation != null && message.hasOwnProperty("invocation"))
+ object.invocation = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.toObject(message.invocation, options);
+ if (message.buildConfig != null && message.hasOwnProperty("buildConfig"))
+ object.buildConfig = $root.google.protobuf.Struct.toObject(message.buildConfig, options);
+ if (message.metadata != null && message.hasOwnProperty("metadata"))
+ object.metadata = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.toObject(message.metadata, options);
+ if (message.materials && message.materials.length) {
+ object.materials = [];
+ for (var j = 0; j < message.materials.length; ++j)
+ object.materials[j] = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.toObject(message.materials[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this SlsaProvenanceZeroTwo to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaProvenanceZeroTwo.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaProvenanceZeroTwo
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaProvenanceZeroTwo.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo";
+ };
+
+ SlsaProvenanceZeroTwo.SlsaBuilder = (function() {
+
+ /**
+ * Properties of a SlsaBuilder.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @interface ISlsaBuilder
+ * @property {string|null} [id] SlsaBuilder id
+ */
+
+ /**
+ * Constructs a new SlsaBuilder.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @classdesc Represents a SlsaBuilder.
+ * @implements ISlsaBuilder
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder=} [properties] Properties to set
+ */
+ function SlsaBuilder(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]];
+ }
+
+ /**
+ * SlsaBuilder id.
+ * @member {string} id
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @instance
+ */
+ SlsaBuilder.prototype.id = "";
+
+ /**
+ * Creates a new SlsaBuilder instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder} SlsaBuilder instance
+ */
+ SlsaBuilder.create = function create(properties) {
+ return new SlsaBuilder(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaBuilder message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder} message SlsaBuilder message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaBuilder.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaBuilder message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaBuilder} message SlsaBuilder message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaBuilder.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder} SlsaBuilder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaBuilder.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.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.id = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaBuilder message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder} SlsaBuilder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaBuilder.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaBuilder message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaBuilder.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.id != null && message.hasOwnProperty("id"))
+ if (!$util.isString(message.id))
+ return "id: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaBuilder message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder} SlsaBuilder
+ */
+ SlsaBuilder.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder();
+ if (object.id != null)
+ message.id = String(object.id);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaBuilder message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder} message SlsaBuilder
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaBuilder.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.id = "";
+ if (message.id != null && message.hasOwnProperty("id"))
+ object.id = message.id;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaBuilder to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaBuilder.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaBuilder
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaBuilder.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo.SlsaBuilder";
+ };
+
+ return SlsaBuilder;
+ })();
+
+ SlsaProvenanceZeroTwo.SlsaMaterial = (function() {
+
+ /**
+ * Properties of a SlsaMaterial.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @interface ISlsaMaterial
+ * @property {string|null} [uri] SlsaMaterial uri
+ * @property {Object.|null} [digest] SlsaMaterial digest
+ */
+
+ /**
+ * Constructs a new SlsaMaterial.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @classdesc Represents a SlsaMaterial.
+ * @implements ISlsaMaterial
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial=} [properties] Properties to set
+ */
+ function SlsaMaterial(properties) {
+ this.digest = {};
+ 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]];
+ }
+
+ /**
+ * SlsaMaterial uri.
+ * @member {string} uri
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @instance
+ */
+ SlsaMaterial.prototype.uri = "";
+
+ /**
+ * SlsaMaterial digest.
+ * @member {Object.} digest
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @instance
+ */
+ SlsaMaterial.prototype.digest = $util.emptyObject;
+
+ /**
+ * Creates a new SlsaMaterial instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial} SlsaMaterial instance
+ */
+ SlsaMaterial.create = function create(properties) {
+ return new SlsaMaterial(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaMaterial message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial} message SlsaMaterial message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaMaterial.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.uri != null && Object.hasOwnProperty.call(message, "uri"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.uri);
+ if (message.digest != null && Object.hasOwnProperty.call(message, "digest"))
+ for (var keys = Object.keys(message.digest), 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.digest[keys[i]]).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaMaterial message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMaterial} message SlsaMaterial message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaMaterial.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaMaterial message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial} SlsaMaterial
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaMaterial.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.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.uri = reader.string();
+ break;
+ }
+ case 2: {
+ if (message.digest === $util.emptyObject)
+ message.digest = {};
+ 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.digest[key] = value;
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaMaterial message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial} SlsaMaterial
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaMaterial.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaMaterial message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaMaterial.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ if (!$util.isString(message.uri))
+ return "uri: string expected";
+ if (message.digest != null && message.hasOwnProperty("digest")) {
+ if (!$util.isObject(message.digest))
+ return "digest: object expected";
+ var key = Object.keys(message.digest);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.digest[key[i]]))
+ return "digest: string{k:string} expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SlsaMaterial message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial} SlsaMaterial
+ */
+ SlsaMaterial.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial();
+ if (object.uri != null)
+ message.uri = String(object.uri);
+ if (object.digest) {
+ if (typeof object.digest !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial.digest: object expected");
+ message.digest = {};
+ for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i)
+ message.digest[keys[i]] = String(object.digest[keys[i]]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaMaterial message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial} message SlsaMaterial
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaMaterial.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.digest = {};
+ if (options.defaults)
+ object.uri = "";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ object.uri = message.uri;
+ var keys2;
+ if (message.digest && (keys2 = Object.keys(message.digest)).length) {
+ object.digest = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.digest[keys2[j]] = message.digest[keys2[j]];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this SlsaMaterial to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaMaterial.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaMaterial
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaMaterial.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo.SlsaMaterial";
+ };
+
+ return SlsaMaterial;
+ })();
+
+ SlsaProvenanceZeroTwo.SlsaInvocation = (function() {
+
+ /**
+ * Properties of a SlsaInvocation.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @interface ISlsaInvocation
+ * @property {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource|null} [configSource] SlsaInvocation configSource
+ * @property {google.protobuf.IStruct|null} [parameters] SlsaInvocation parameters
+ * @property {google.protobuf.IStruct|null} [environment] SlsaInvocation environment
+ */
+
+ /**
+ * Constructs a new SlsaInvocation.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @classdesc Represents a SlsaInvocation.
+ * @implements ISlsaInvocation
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation=} [properties] Properties to set
+ */
+ function SlsaInvocation(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]];
+ }
+
+ /**
+ * SlsaInvocation configSource.
+ * @member {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource|null|undefined} configSource
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @instance
+ */
+ SlsaInvocation.prototype.configSource = null;
+
+ /**
+ * SlsaInvocation parameters.
+ * @member {google.protobuf.IStruct|null|undefined} parameters
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @instance
+ */
+ SlsaInvocation.prototype.parameters = null;
+
+ /**
+ * SlsaInvocation environment.
+ * @member {google.protobuf.IStruct|null|undefined} environment
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @instance
+ */
+ SlsaInvocation.prototype.environment = null;
+
+ /**
+ * Creates a new SlsaInvocation instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation} SlsaInvocation instance
+ */
+ SlsaInvocation.create = function create(properties) {
+ return new SlsaInvocation(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaInvocation message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation} message SlsaInvocation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaInvocation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.configSource != null && Object.hasOwnProperty.call(message, "configSource"))
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.encode(message.configSource, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.parameters != null && Object.hasOwnProperty.call(message, "parameters"))
+ $root.google.protobuf.Struct.encode(message.parameters, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.environment != null && Object.hasOwnProperty.call(message, "environment"))
+ $root.google.protobuf.Struct.encode(message.environment, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaInvocation message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaInvocation} message SlsaInvocation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaInvocation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaInvocation message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation} SlsaInvocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaInvocation.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.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.parameters = $root.google.protobuf.Struct.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.environment = $root.google.protobuf.Struct.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaInvocation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation} SlsaInvocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaInvocation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaInvocation message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaInvocation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.configSource != null && message.hasOwnProperty("configSource")) {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify(message.configSource);
+ if (error)
+ return "configSource." + error;
+ }
+ if (message.parameters != null && message.hasOwnProperty("parameters")) {
+ var error = $root.google.protobuf.Struct.verify(message.parameters);
+ if (error)
+ return "parameters." + error;
+ }
+ if (message.environment != null && message.hasOwnProperty("environment")) {
+ var error = $root.google.protobuf.Struct.verify(message.environment);
+ if (error)
+ return "environment." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SlsaInvocation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation} SlsaInvocation
+ */
+ SlsaInvocation.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation();
+ if (object.configSource != null) {
+ if (typeof object.configSource !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.configSource: object expected");
+ message.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.fromObject(object.configSource);
+ }
+ if (object.parameters != null) {
+ if (typeof object.parameters !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.parameters: object expected");
+ message.parameters = $root.google.protobuf.Struct.fromObject(object.parameters);
+ }
+ if (object.environment != null) {
+ if (typeof object.environment !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation.environment: object expected");
+ message.environment = $root.google.protobuf.Struct.fromObject(object.environment);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaInvocation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation} message SlsaInvocation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaInvocation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.configSource = null;
+ object.parameters = null;
+ object.environment = null;
+ }
+ if (message.configSource != null && message.hasOwnProperty("configSource"))
+ object.configSource = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.toObject(message.configSource, options);
+ if (message.parameters != null && message.hasOwnProperty("parameters"))
+ object.parameters = $root.google.protobuf.Struct.toObject(message.parameters, options);
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ object.environment = $root.google.protobuf.Struct.toObject(message.environment, options);
+ return object;
+ };
+
+ /**
+ * Converts this SlsaInvocation to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaInvocation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaInvocation
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaInvocation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo.SlsaInvocation";
+ };
+
+ return SlsaInvocation;
+ })();
+
+ SlsaProvenanceZeroTwo.SlsaConfigSource = (function() {
+
+ /**
+ * Properties of a SlsaConfigSource.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @interface ISlsaConfigSource
+ * @property {string|null} [uri] SlsaConfigSource uri
+ * @property {Object.|null} [digest] SlsaConfigSource digest
+ * @property {string|null} [entryPoint] SlsaConfigSource entryPoint
+ */
+
+ /**
+ * Constructs a new SlsaConfigSource.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @classdesc Represents a SlsaConfigSource.
+ * @implements ISlsaConfigSource
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource=} [properties] Properties to set
+ */
+ function SlsaConfigSource(properties) {
+ this.digest = {};
+ 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]];
+ }
+
+ /**
+ * SlsaConfigSource uri.
+ * @member {string} uri
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @instance
+ */
+ SlsaConfigSource.prototype.uri = "";
+
+ /**
+ * SlsaConfigSource digest.
+ * @member {Object.} digest
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @instance
+ */
+ SlsaConfigSource.prototype.digest = $util.emptyObject;
+
+ /**
+ * SlsaConfigSource entryPoint.
+ * @member {string} entryPoint
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @instance
+ */
+ SlsaConfigSource.prototype.entryPoint = "";
+
+ /**
+ * Creates a new SlsaConfigSource instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource} SlsaConfigSource instance
+ */
+ SlsaConfigSource.create = function create(properties) {
+ return new SlsaConfigSource(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaConfigSource message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource} message SlsaConfigSource message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaConfigSource.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.uri != null && Object.hasOwnProperty.call(message, "uri"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.uri);
+ if (message.digest != null && Object.hasOwnProperty.call(message, "digest"))
+ for (var keys = Object.keys(message.digest), 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.digest[keys[i]]).ldelim();
+ if (message.entryPoint != null && Object.hasOwnProperty.call(message, "entryPoint"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.entryPoint);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaConfigSource message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaConfigSource} message SlsaConfigSource message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaConfigSource.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaConfigSource message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource} SlsaConfigSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaConfigSource.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.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.uri = reader.string();
+ break;
+ }
+ case 2: {
+ if (message.digest === $util.emptyObject)
+ message.digest = {};
+ 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.digest[key] = value;
+ break;
+ }
+ case 3: {
+ message.entryPoint = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaConfigSource message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource} SlsaConfigSource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaConfigSource.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaConfigSource message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaConfigSource.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ if (!$util.isString(message.uri))
+ return "uri: string expected";
+ if (message.digest != null && message.hasOwnProperty("digest")) {
+ if (!$util.isObject(message.digest))
+ return "digest: object expected";
+ var key = Object.keys(message.digest);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.digest[key[i]]))
+ return "digest: string{k:string} expected";
+ }
+ if (message.entryPoint != null && message.hasOwnProperty("entryPoint"))
+ if (!$util.isString(message.entryPoint))
+ return "entryPoint: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaConfigSource message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource} SlsaConfigSource
+ */
+ SlsaConfigSource.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource();
+ if (object.uri != null)
+ message.uri = String(object.uri);
+ if (object.digest) {
+ if (typeof object.digest !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource.digest: object expected");
+ message.digest = {};
+ for (var keys = Object.keys(object.digest), i = 0; i < keys.length; ++i)
+ message.digest[keys[i]] = String(object.digest[keys[i]]);
+ }
+ if (object.entryPoint != null)
+ message.entryPoint = String(object.entryPoint);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaConfigSource message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource} message SlsaConfigSource
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaConfigSource.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.digest = {};
+ if (options.defaults) {
+ object.uri = "";
+ object.entryPoint = "";
+ }
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ object.uri = message.uri;
+ var keys2;
+ if (message.digest && (keys2 = Object.keys(message.digest)).length) {
+ object.digest = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.digest[keys2[j]] = message.digest[keys2[j]];
+ }
+ if (message.entryPoint != null && message.hasOwnProperty("entryPoint"))
+ object.entryPoint = message.entryPoint;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaConfigSource to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaConfigSource.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaConfigSource
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaConfigSource.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo.SlsaConfigSource";
+ };
+
+ return SlsaConfigSource;
+ })();
+
+ SlsaProvenanceZeroTwo.SlsaMetadata = (function() {
+
+ /**
+ * Properties of a SlsaMetadata.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @interface ISlsaMetadata
+ * @property {string|null} [buildInvocationId] SlsaMetadata buildInvocationId
+ * @property {google.protobuf.ITimestamp|null} [buildStartedOn] SlsaMetadata buildStartedOn
+ * @property {google.protobuf.ITimestamp|null} [buildFinishedOn] SlsaMetadata buildFinishedOn
+ * @property {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness|null} [completeness] SlsaMetadata completeness
+ * @property {boolean|null} [reproducible] SlsaMetadata reproducible
+ */
+
+ /**
+ * Constructs a new SlsaMetadata.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @classdesc Represents a SlsaMetadata.
+ * @implements ISlsaMetadata
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata=} [properties] Properties to set
+ */
+ function SlsaMetadata(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]];
+ }
+
+ /**
+ * SlsaMetadata buildInvocationId.
+ * @member {string} buildInvocationId
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.buildInvocationId = "";
+
+ /**
+ * SlsaMetadata buildStartedOn.
+ * @member {google.protobuf.ITimestamp|null|undefined} buildStartedOn
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.buildStartedOn = null;
+
+ /**
+ * SlsaMetadata buildFinishedOn.
+ * @member {google.protobuf.ITimestamp|null|undefined} buildFinishedOn
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.buildFinishedOn = null;
+
+ /**
+ * SlsaMetadata completeness.
+ * @member {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness|null|undefined} completeness
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.completeness = null;
+
+ /**
+ * SlsaMetadata reproducible.
+ * @member {boolean} reproducible
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @instance
+ */
+ SlsaMetadata.prototype.reproducible = false;
+
+ /**
+ * Creates a new SlsaMetadata instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata} SlsaMetadata instance
+ */
+ SlsaMetadata.create = function create(properties) {
+ return new SlsaMetadata(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaMetadata message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata} message SlsaMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaMetadata.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.buildInvocationId != null && Object.hasOwnProperty.call(message, "buildInvocationId"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.buildInvocationId);
+ if (message.buildStartedOn != null && Object.hasOwnProperty.call(message, "buildStartedOn"))
+ $root.google.protobuf.Timestamp.encode(message.buildStartedOn, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.buildFinishedOn != null && Object.hasOwnProperty.call(message, "buildFinishedOn"))
+ $root.google.protobuf.Timestamp.encode(message.buildFinishedOn, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.completeness != null && Object.hasOwnProperty.call(message, "completeness"))
+ $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.encode(message.completeness, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.reproducible != null && Object.hasOwnProperty.call(message, "reproducible"))
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.reproducible);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaMetadata message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaMetadata} message SlsaMetadata message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaMetadata.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata} SlsaMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaMetadata.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.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.buildInvocationId = reader.string();
+ break;
+ }
+ case 2: {
+ message.buildStartedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.buildFinishedOn = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.decode(reader, reader.uint32());
+ break;
+ }
+ case 5: {
+ message.reproducible = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaMetadata message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata} SlsaMetadata
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaMetadata.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaMetadata message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaMetadata.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId"))
+ if (!$util.isString(message.buildInvocationId))
+ return "buildInvocationId: string expected";
+ if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.buildStartedOn);
+ if (error)
+ return "buildStartedOn." + error;
+ }
+ if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.buildFinishedOn);
+ if (error)
+ return "buildFinishedOn." + error;
+ }
+ if (message.completeness != null && message.hasOwnProperty("completeness")) {
+ var error = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify(message.completeness);
+ if (error)
+ return "completeness." + error;
+ }
+ if (message.reproducible != null && message.hasOwnProperty("reproducible"))
+ if (typeof message.reproducible !== "boolean")
+ return "reproducible: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaMetadata message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata} SlsaMetadata
+ */
+ SlsaMetadata.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata();
+ if (object.buildInvocationId != null)
+ message.buildInvocationId = String(object.buildInvocationId);
+ if (object.buildStartedOn != null) {
+ if (typeof object.buildStartedOn !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.buildStartedOn: object expected");
+ message.buildStartedOn = $root.google.protobuf.Timestamp.fromObject(object.buildStartedOn);
+ }
+ if (object.buildFinishedOn != null) {
+ if (typeof object.buildFinishedOn !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.buildFinishedOn: object expected");
+ message.buildFinishedOn = $root.google.protobuf.Timestamp.fromObject(object.buildFinishedOn);
+ }
+ if (object.completeness != null) {
+ if (typeof object.completeness !== "object")
+ throw TypeError(".grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata.completeness: object expected");
+ message.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.fromObject(object.completeness);
+ }
+ if (object.reproducible != null)
+ message.reproducible = Boolean(object.reproducible);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaMetadata message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata} message SlsaMetadata
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaMetadata.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.buildInvocationId = "";
+ object.buildStartedOn = null;
+ object.buildFinishedOn = null;
+ object.completeness = null;
+ object.reproducible = false;
+ }
+ if (message.buildInvocationId != null && message.hasOwnProperty("buildInvocationId"))
+ object.buildInvocationId = message.buildInvocationId;
+ if (message.buildStartedOn != null && message.hasOwnProperty("buildStartedOn"))
+ object.buildStartedOn = $root.google.protobuf.Timestamp.toObject(message.buildStartedOn, options);
+ if (message.buildFinishedOn != null && message.hasOwnProperty("buildFinishedOn"))
+ object.buildFinishedOn = $root.google.protobuf.Timestamp.toObject(message.buildFinishedOn, options);
+ if (message.completeness != null && message.hasOwnProperty("completeness"))
+ object.completeness = $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.toObject(message.completeness, options);
+ if (message.reproducible != null && message.hasOwnProperty("reproducible"))
+ object.reproducible = message.reproducible;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaMetadata to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaMetadata.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaMetadata
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaMetadata.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo.SlsaMetadata";
+ };
+
+ return SlsaMetadata;
+ })();
+
+ SlsaProvenanceZeroTwo.SlsaCompleteness = (function() {
+
+ /**
+ * Properties of a SlsaCompleteness.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @interface ISlsaCompleteness
+ * @property {boolean|null} [parameters] SlsaCompleteness parameters
+ * @property {boolean|null} [environment] SlsaCompleteness environment
+ * @property {boolean|null} [materials] SlsaCompleteness materials
+ */
+
+ /**
+ * Constructs a new SlsaCompleteness.
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo
+ * @classdesc Represents a SlsaCompleteness.
+ * @implements ISlsaCompleteness
+ * @constructor
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness=} [properties] Properties to set
+ */
+ function SlsaCompleteness(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]];
+ }
+
+ /**
+ * SlsaCompleteness parameters.
+ * @member {boolean} parameters
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @instance
+ */
+ SlsaCompleteness.prototype.parameters = false;
+
+ /**
+ * SlsaCompleteness environment.
+ * @member {boolean} environment
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @instance
+ */
+ SlsaCompleteness.prototype.environment = false;
+
+ /**
+ * SlsaCompleteness materials.
+ * @member {boolean} materials
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @instance
+ */
+ SlsaCompleteness.prototype.materials = false;
+
+ /**
+ * Creates a new SlsaCompleteness instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness=} [properties] Properties to set
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness} SlsaCompleteness instance
+ */
+ SlsaCompleteness.create = function create(properties) {
+ return new SlsaCompleteness(properties);
+ };
+
+ /**
+ * Encodes the specified SlsaCompleteness message. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness} message SlsaCompleteness message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaCompleteness.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.parameters != null && Object.hasOwnProperty.call(message, "parameters"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.parameters);
+ if (message.environment != null && Object.hasOwnProperty.call(message, "environment"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.environment);
+ if (message.materials != null && Object.hasOwnProperty.call(message, "materials"))
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.materials);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SlsaCompleteness message, length delimited. Does not implicitly {@link grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.ISlsaCompleteness} message SlsaCompleteness message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SlsaCompleteness.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness} SlsaCompleteness
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaCompleteness.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.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.parameters = reader.bool();
+ break;
+ }
+ case 2: {
+ message.environment = reader.bool();
+ break;
+ }
+ case 3: {
+ message.materials = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SlsaCompleteness message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness} SlsaCompleteness
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SlsaCompleteness.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SlsaCompleteness message.
+ * @function verify
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SlsaCompleteness.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.parameters != null && message.hasOwnProperty("parameters"))
+ if (typeof message.parameters !== "boolean")
+ return "parameters: boolean expected";
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ if (typeof message.environment !== "boolean")
+ return "environment: boolean expected";
+ if (message.materials != null && message.hasOwnProperty("materials"))
+ if (typeof message.materials !== "boolean")
+ return "materials: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a SlsaCompleteness message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness} SlsaCompleteness
+ */
+ SlsaCompleteness.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness)
+ return object;
+ var message = new $root.grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness();
+ if (object.parameters != null)
+ message.parameters = Boolean(object.parameters);
+ if (object.environment != null)
+ message.environment = Boolean(object.environment);
+ if (object.materials != null)
+ message.materials = Boolean(object.materials);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SlsaCompleteness message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness} message SlsaCompleteness
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SlsaCompleteness.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.parameters = false;
+ object.environment = false;
+ object.materials = false;
+ }
+ if (message.parameters != null && message.hasOwnProperty("parameters"))
+ object.parameters = message.parameters;
+ if (message.environment != null && message.hasOwnProperty("environment"))
+ object.environment = message.environment;
+ if (message.materials != null && message.hasOwnProperty("materials"))
+ object.materials = message.materials;
+ return object;
+ };
+
+ /**
+ * Converts this SlsaCompleteness to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SlsaCompleteness.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SlsaCompleteness
+ * @function getTypeUrl
+ * @memberof grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SlsaCompleteness.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.SlsaProvenanceZeroTwo.SlsaCompleteness";
+ };
+
+ return SlsaCompleteness;
+ })();
+
+ return SlsaProvenanceZeroTwo;
+ })();
+
+ v1.BuildProvenance = (function() {
+
+ /**
+ * Properties of a BuildProvenance.
+ * @memberof grafeas.v1
+ * @interface IBuildProvenance
+ * @property {string|null} [id] BuildProvenance id
+ * @property {string|null} [projectId] BuildProvenance projectId
+ * @property {Array.|null} [commands] BuildProvenance commands
+ * @property {Array.|null} [builtArtifacts] BuildProvenance builtArtifacts
+ * @property {google.protobuf.ITimestamp|null} [createTime] BuildProvenance createTime
+ * @property {google.protobuf.ITimestamp|null} [startTime] BuildProvenance startTime
+ * @property {google.protobuf.ITimestamp|null} [endTime] BuildProvenance endTime
+ * @property {string|null} [creator] BuildProvenance creator
+ * @property {string|null} [logsUri] BuildProvenance logsUri
+ * @property {grafeas.v1.ISource|null} [sourceProvenance] BuildProvenance sourceProvenance
+ * @property {string|null} [triggerId] BuildProvenance triggerId
+ * @property {Object.|null} [buildOptions] BuildProvenance buildOptions
+ * @property {string|null} [builderVersion] BuildProvenance builderVersion
+ */
+
+ /**
+ * Constructs a new BuildProvenance.
+ * @memberof grafeas.v1
+ * @classdesc Represents a BuildProvenance.
+ * @implements IBuildProvenance
+ * @constructor
+ * @param {grafeas.v1.IBuildProvenance=} [properties] Properties to set
+ */
+ function BuildProvenance(properties) {
+ this.commands = [];
+ this.builtArtifacts = [];
+ this.buildOptions = {};
+ 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]];
+ }
+
+ /**
+ * BuildProvenance id.
+ * @member {string} id
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.id = "";
+
+ /**
+ * BuildProvenance projectId.
+ * @member {string} projectId
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.projectId = "";
+
+ /**
+ * BuildProvenance commands.
+ * @member {Array.} commands
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.commands = $util.emptyArray;
+
+ /**
+ * BuildProvenance builtArtifacts.
+ * @member {Array.} builtArtifacts
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.builtArtifacts = $util.emptyArray;
+
+ /**
+ * BuildProvenance createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.createTime = null;
+
+ /**
+ * BuildProvenance startTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} startTime
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.startTime = null;
+
+ /**
+ * BuildProvenance endTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} endTime
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.endTime = null;
+
+ /**
+ * BuildProvenance creator.
+ * @member {string} creator
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.creator = "";
+
+ /**
+ * BuildProvenance logsUri.
+ * @member {string} logsUri
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.logsUri = "";
+
+ /**
+ * BuildProvenance sourceProvenance.
+ * @member {grafeas.v1.ISource|null|undefined} sourceProvenance
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.sourceProvenance = null;
+
+ /**
+ * BuildProvenance triggerId.
+ * @member {string} triggerId
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.triggerId = "";
+
+ /**
+ * BuildProvenance buildOptions.
+ * @member {Object.} buildOptions
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.buildOptions = $util.emptyObject;
+
+ /**
+ * BuildProvenance builderVersion.
+ * @member {string} builderVersion
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ */
+ BuildProvenance.prototype.builderVersion = "";
+
+ /**
+ * Creates a new BuildProvenance instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {grafeas.v1.IBuildProvenance=} [properties] Properties to set
+ * @returns {grafeas.v1.BuildProvenance} BuildProvenance instance
+ */
+ BuildProvenance.create = function create(properties) {
+ return new BuildProvenance(properties);
+ };
+
+ /**
+ * Encodes the specified BuildProvenance message. Does not implicitly {@link grafeas.v1.BuildProvenance.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {grafeas.v1.IBuildProvenance} message BuildProvenance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuildProvenance.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);
+ if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.projectId);
+ if (message.commands != null && message.commands.length)
+ for (var i = 0; i < message.commands.length; ++i)
+ $root.grafeas.v1.Command.encode(message.commands[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.builtArtifacts != null && message.builtArtifacts.length)
+ for (var i = 0; i < message.builtArtifacts.length; ++i)
+ $root.grafeas.v1.Artifact.encode(message.builtArtifacts[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ 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.startTime != null && Object.hasOwnProperty.call(message, "startTime"))
+ $root.google.protobuf.Timestamp.encode(message.startTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime"))
+ $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
+ if (message.creator != null && Object.hasOwnProperty.call(message, "creator"))
+ writer.uint32(/* id 8, wireType 2 =*/66).string(message.creator);
+ if (message.logsUri != null && Object.hasOwnProperty.call(message, "logsUri"))
+ writer.uint32(/* id 9, wireType 2 =*/74).string(message.logsUri);
+ if (message.sourceProvenance != null && Object.hasOwnProperty.call(message, "sourceProvenance"))
+ $root.grafeas.v1.Source.encode(message.sourceProvenance, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
+ if (message.triggerId != null && Object.hasOwnProperty.call(message, "triggerId"))
+ writer.uint32(/* id 11, wireType 2 =*/90).string(message.triggerId);
+ if (message.buildOptions != null && Object.hasOwnProperty.call(message, "buildOptions"))
+ for (var keys = Object.keys(message.buildOptions), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 12, wireType 2 =*/98).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.buildOptions[keys[i]]).ldelim();
+ if (message.builderVersion != null && Object.hasOwnProperty.call(message, "builderVersion"))
+ writer.uint32(/* id 13, wireType 2 =*/106).string(message.builderVersion);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BuildProvenance message, length delimited. Does not implicitly {@link grafeas.v1.BuildProvenance.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {grafeas.v1.IBuildProvenance} message BuildProvenance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BuildProvenance.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BuildProvenance message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.BuildProvenance} BuildProvenance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuildProvenance.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.grafeas.v1.BuildProvenance(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.id = reader.string();
+ break;
+ }
+ case 2: {
+ message.projectId = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.commands && message.commands.length))
+ message.commands = [];
+ message.commands.push($root.grafeas.v1.Command.decode(reader, reader.uint32()));
+ break;
+ }
+ case 4: {
+ if (!(message.builtArtifacts && message.builtArtifacts.length))
+ message.builtArtifacts = [];
+ message.builtArtifacts.push($root.grafeas.v1.Artifact.decode(reader, reader.uint32()));
+ break;
+ }
+ case 5: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 7: {
+ message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 8: {
+ message.creator = reader.string();
+ break;
+ }
+ case 9: {
+ message.logsUri = reader.string();
+ break;
+ }
+ case 10: {
+ message.sourceProvenance = $root.grafeas.v1.Source.decode(reader, reader.uint32());
+ break;
+ }
+ case 11: {
+ message.triggerId = reader.string();
+ break;
+ }
+ case 12: {
+ if (message.buildOptions === $util.emptyObject)
+ message.buildOptions = {};
+ 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.buildOptions[key] = value;
+ break;
+ }
+ case 13: {
+ message.builderVersion = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BuildProvenance message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.BuildProvenance} BuildProvenance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BuildProvenance.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BuildProvenance message.
+ * @function verify
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BuildProvenance.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.id != null && message.hasOwnProperty("id"))
+ if (!$util.isString(message.id))
+ return "id: string expected";
+ if (message.projectId != null && message.hasOwnProperty("projectId"))
+ if (!$util.isString(message.projectId))
+ return "projectId: string expected";
+ if (message.commands != null && message.hasOwnProperty("commands")) {
+ if (!Array.isArray(message.commands))
+ return "commands: array expected";
+ for (var i = 0; i < message.commands.length; ++i) {
+ var error = $root.grafeas.v1.Command.verify(message.commands[i]);
+ if (error)
+ return "commands." + error;
+ }
+ }
+ if (message.builtArtifacts != null && message.hasOwnProperty("builtArtifacts")) {
+ if (!Array.isArray(message.builtArtifacts))
+ return "builtArtifacts: array expected";
+ for (var i = 0; i < message.builtArtifacts.length; ++i) {
+ var error = $root.grafeas.v1.Artifact.verify(message.builtArtifacts[i]);
+ if (error)
+ return "builtArtifacts." + error;
+ }
+ }
+ if (message.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.startTime != null && message.hasOwnProperty("startTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.startTime);
+ if (error)
+ return "startTime." + error;
+ }
+ if (message.endTime != null && message.hasOwnProperty("endTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.endTime);
+ if (error)
+ return "endTime." + error;
+ }
+ if (message.creator != null && message.hasOwnProperty("creator"))
+ if (!$util.isString(message.creator))
+ return "creator: string expected";
+ if (message.logsUri != null && message.hasOwnProperty("logsUri"))
+ if (!$util.isString(message.logsUri))
+ return "logsUri: string expected";
+ if (message.sourceProvenance != null && message.hasOwnProperty("sourceProvenance")) {
+ var error = $root.grafeas.v1.Source.verify(message.sourceProvenance);
+ if (error)
+ return "sourceProvenance." + error;
+ }
+ if (message.triggerId != null && message.hasOwnProperty("triggerId"))
+ if (!$util.isString(message.triggerId))
+ return "triggerId: string expected";
+ if (message.buildOptions != null && message.hasOwnProperty("buildOptions")) {
+ if (!$util.isObject(message.buildOptions))
+ return "buildOptions: object expected";
+ var key = Object.keys(message.buildOptions);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.buildOptions[key[i]]))
+ return "buildOptions: string{k:string} expected";
+ }
+ if (message.builderVersion != null && message.hasOwnProperty("builderVersion"))
+ if (!$util.isString(message.builderVersion))
+ return "builderVersion: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a BuildProvenance message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.BuildProvenance} BuildProvenance
+ */
+ BuildProvenance.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.BuildProvenance)
+ return object;
+ var message = new $root.grafeas.v1.BuildProvenance();
+ if (object.id != null)
+ message.id = String(object.id);
+ if (object.projectId != null)
+ message.projectId = String(object.projectId);
+ if (object.commands) {
+ if (!Array.isArray(object.commands))
+ throw TypeError(".grafeas.v1.BuildProvenance.commands: array expected");
+ message.commands = [];
+ for (var i = 0; i < object.commands.length; ++i) {
+ if (typeof object.commands[i] !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.commands: object expected");
+ message.commands[i] = $root.grafeas.v1.Command.fromObject(object.commands[i]);
+ }
+ }
+ if (object.builtArtifacts) {
+ if (!Array.isArray(object.builtArtifacts))
+ throw TypeError(".grafeas.v1.BuildProvenance.builtArtifacts: array expected");
+ message.builtArtifacts = [];
+ for (var i = 0; i < object.builtArtifacts.length; ++i) {
+ if (typeof object.builtArtifacts[i] !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.builtArtifacts: object expected");
+ message.builtArtifacts[i] = $root.grafeas.v1.Artifact.fromObject(object.builtArtifacts[i]);
+ }
+ }
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.startTime != null) {
+ if (typeof object.startTime !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.startTime: object expected");
+ message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime);
+ }
+ if (object.endTime != null) {
+ if (typeof object.endTime !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.endTime: object expected");
+ message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime);
+ }
+ if (object.creator != null)
+ message.creator = String(object.creator);
+ if (object.logsUri != null)
+ message.logsUri = String(object.logsUri);
+ if (object.sourceProvenance != null) {
+ if (typeof object.sourceProvenance !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.sourceProvenance: object expected");
+ message.sourceProvenance = $root.grafeas.v1.Source.fromObject(object.sourceProvenance);
+ }
+ if (object.triggerId != null)
+ message.triggerId = String(object.triggerId);
+ if (object.buildOptions) {
+ if (typeof object.buildOptions !== "object")
+ throw TypeError(".grafeas.v1.BuildProvenance.buildOptions: object expected");
+ message.buildOptions = {};
+ for (var keys = Object.keys(object.buildOptions), i = 0; i < keys.length; ++i)
+ message.buildOptions[keys[i]] = String(object.buildOptions[keys[i]]);
+ }
+ if (object.builderVersion != null)
+ message.builderVersion = String(object.builderVersion);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BuildProvenance message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {grafeas.v1.BuildProvenance} message BuildProvenance
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BuildProvenance.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.commands = [];
+ object.builtArtifacts = [];
+ }
+ if (options.objects || options.defaults)
+ object.buildOptions = {};
+ if (options.defaults) {
+ object.id = "";
+ object.projectId = "";
+ object.createTime = null;
+ object.startTime = null;
+ object.endTime = null;
+ object.creator = "";
+ object.logsUri = "";
+ object.sourceProvenance = null;
+ object.triggerId = "";
+ object.builderVersion = "";
+ }
+ if (message.id != null && message.hasOwnProperty("id"))
+ object.id = message.id;
+ if (message.projectId != null && message.hasOwnProperty("projectId"))
+ object.projectId = message.projectId;
+ if (message.commands && message.commands.length) {
+ object.commands = [];
+ for (var j = 0; j < message.commands.length; ++j)
+ object.commands[j] = $root.grafeas.v1.Command.toObject(message.commands[j], options);
+ }
+ if (message.builtArtifacts && message.builtArtifacts.length) {
+ object.builtArtifacts = [];
+ for (var j = 0; j < message.builtArtifacts.length; ++j)
+ object.builtArtifacts[j] = $root.grafeas.v1.Artifact.toObject(message.builtArtifacts[j], options);
+ }
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.startTime != null && message.hasOwnProperty("startTime"))
+ object.startTime = $root.google.protobuf.Timestamp.toObject(message.startTime, options);
+ if (message.endTime != null && message.hasOwnProperty("endTime"))
+ object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options);
+ if (message.creator != null && message.hasOwnProperty("creator"))
+ object.creator = message.creator;
+ if (message.logsUri != null && message.hasOwnProperty("logsUri"))
+ object.logsUri = message.logsUri;
+ if (message.sourceProvenance != null && message.hasOwnProperty("sourceProvenance"))
+ object.sourceProvenance = $root.grafeas.v1.Source.toObject(message.sourceProvenance, options);
+ if (message.triggerId != null && message.hasOwnProperty("triggerId"))
+ object.triggerId = message.triggerId;
+ var keys2;
+ if (message.buildOptions && (keys2 = Object.keys(message.buildOptions)).length) {
+ object.buildOptions = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.buildOptions[keys2[j]] = message.buildOptions[keys2[j]];
+ }
+ if (message.builderVersion != null && message.hasOwnProperty("builderVersion"))
+ object.builderVersion = message.builderVersion;
+ return object;
+ };
+
+ /**
+ * Converts this BuildProvenance to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.BuildProvenance
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BuildProvenance.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BuildProvenance
+ * @function getTypeUrl
+ * @memberof grafeas.v1.BuildProvenance
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BuildProvenance.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.BuildProvenance";
+ };
+
+ return BuildProvenance;
+ })();
+
+ v1.Source = (function() {
+
+ /**
+ * Properties of a Source.
+ * @memberof grafeas.v1
+ * @interface ISource
+ * @property {string|null} [artifactStorageSourceUri] Source artifactStorageSourceUri
+ * @property {Object.|null} [fileHashes] Source fileHashes
+ * @property {grafeas.v1.ISourceContext|null} [context] Source context
+ * @property {Array.|null} [additionalContexts] Source additionalContexts
+ */
+
+ /**
+ * Constructs a new Source.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Source.
+ * @implements ISource
+ * @constructor
+ * @param {grafeas.v1.ISource=} [properties] Properties to set
+ */
+ function Source(properties) {
+ this.fileHashes = {};
+ this.additionalContexts = [];
+ 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]];
+ }
+
+ /**
+ * Source artifactStorageSourceUri.
+ * @member {string} artifactStorageSourceUri
+ * @memberof grafeas.v1.Source
+ * @instance
+ */
+ Source.prototype.artifactStorageSourceUri = "";
+
+ /**
+ * Source fileHashes.
+ * @member {Object.} fileHashes
+ * @memberof grafeas.v1.Source
+ * @instance
+ */
+ Source.prototype.fileHashes = $util.emptyObject;
+
+ /**
+ * Source context.
+ * @member {grafeas.v1.ISourceContext|null|undefined} context
+ * @memberof grafeas.v1.Source
+ * @instance
+ */
+ Source.prototype.context = null;
+
+ /**
+ * Source additionalContexts.
+ * @member {Array.} additionalContexts
+ * @memberof grafeas.v1.Source
+ * @instance
+ */
+ Source.prototype.additionalContexts = $util.emptyArray;
+
+ /**
+ * Creates a new Source instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {grafeas.v1.ISource=} [properties] Properties to set
+ * @returns {grafeas.v1.Source} Source instance
+ */
+ Source.create = function create(properties) {
+ return new Source(properties);
+ };
+
+ /**
+ * Encodes the specified Source message. Does not implicitly {@link grafeas.v1.Source.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {grafeas.v1.ISource} message Source message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Source.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.artifactStorageSourceUri != null && Object.hasOwnProperty.call(message, "artifactStorageSourceUri"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.artifactStorageSourceUri);
+ if (message.fileHashes != null && Object.hasOwnProperty.call(message, "fileHashes"))
+ for (var keys = Object.keys(message.fileHashes), i = 0; i < keys.length; ++i) {
+ writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]);
+ $root.grafeas.v1.FileHashes.encode(message.fileHashes[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim();
+ }
+ if (message.context != null && Object.hasOwnProperty.call(message, "context"))
+ $root.grafeas.v1.SourceContext.encode(message.context, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.additionalContexts != null && message.additionalContexts.length)
+ for (var i = 0; i < message.additionalContexts.length; ++i)
+ $root.grafeas.v1.SourceContext.encode(message.additionalContexts[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Source message, length delimited. Does not implicitly {@link grafeas.v1.Source.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {grafeas.v1.ISource} message Source message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Source.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Source message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Source} Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Source.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.grafeas.v1.Source(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.artifactStorageSourceUri = reader.string();
+ break;
+ }
+ case 2: {
+ if (message.fileHashes === $util.emptyObject)
+ message.fileHashes = {};
+ 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.grafeas.v1.FileHashes.decode(reader, reader.uint32());
+ break;
+ default:
+ reader.skipType(tag2 & 7);
+ break;
+ }
+ }
+ message.fileHashes[key] = value;
+ break;
+ }
+ case 3: {
+ message.context = $root.grafeas.v1.SourceContext.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ if (!(message.additionalContexts && message.additionalContexts.length))
+ message.additionalContexts = [];
+ message.additionalContexts.push($root.grafeas.v1.SourceContext.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Source message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Source} Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Source.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Source message.
+ * @function verify
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Source.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.artifactStorageSourceUri != null && message.hasOwnProperty("artifactStorageSourceUri"))
+ if (!$util.isString(message.artifactStorageSourceUri))
+ return "artifactStorageSourceUri: string expected";
+ if (message.fileHashes != null && message.hasOwnProperty("fileHashes")) {
+ if (!$util.isObject(message.fileHashes))
+ return "fileHashes: object expected";
+ var key = Object.keys(message.fileHashes);
+ for (var i = 0; i < key.length; ++i) {
+ var error = $root.grafeas.v1.FileHashes.verify(message.fileHashes[key[i]]);
+ if (error)
+ return "fileHashes." + error;
+ }
+ }
+ if (message.context != null && message.hasOwnProperty("context")) {
+ var error = $root.grafeas.v1.SourceContext.verify(message.context);
+ if (error)
+ return "context." + error;
+ }
+ if (message.additionalContexts != null && message.hasOwnProperty("additionalContexts")) {
+ if (!Array.isArray(message.additionalContexts))
+ return "additionalContexts: array expected";
+ for (var i = 0; i < message.additionalContexts.length; ++i) {
+ var error = $root.grafeas.v1.SourceContext.verify(message.additionalContexts[i]);
+ if (error)
+ return "additionalContexts." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Source message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Source} Source
+ */
+ Source.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Source)
+ return object;
+ var message = new $root.grafeas.v1.Source();
+ if (object.artifactStorageSourceUri != null)
+ message.artifactStorageSourceUri = String(object.artifactStorageSourceUri);
+ if (object.fileHashes) {
+ if (typeof object.fileHashes !== "object")
+ throw TypeError(".grafeas.v1.Source.fileHashes: object expected");
+ message.fileHashes = {};
+ for (var keys = Object.keys(object.fileHashes), i = 0; i < keys.length; ++i) {
+ if (typeof object.fileHashes[keys[i]] !== "object")
+ throw TypeError(".grafeas.v1.Source.fileHashes: object expected");
+ message.fileHashes[keys[i]] = $root.grafeas.v1.FileHashes.fromObject(object.fileHashes[keys[i]]);
+ }
+ }
+ if (object.context != null) {
+ if (typeof object.context !== "object")
+ throw TypeError(".grafeas.v1.Source.context: object expected");
+ message.context = $root.grafeas.v1.SourceContext.fromObject(object.context);
+ }
+ if (object.additionalContexts) {
+ if (!Array.isArray(object.additionalContexts))
+ throw TypeError(".grafeas.v1.Source.additionalContexts: array expected");
+ message.additionalContexts = [];
+ for (var i = 0; i < object.additionalContexts.length; ++i) {
+ if (typeof object.additionalContexts[i] !== "object")
+ throw TypeError(".grafeas.v1.Source.additionalContexts: object expected");
+ message.additionalContexts[i] = $root.grafeas.v1.SourceContext.fromObject(object.additionalContexts[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Source message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {grafeas.v1.Source} message Source
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Source.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.additionalContexts = [];
+ if (options.objects || options.defaults)
+ object.fileHashes = {};
+ if (options.defaults) {
+ object.artifactStorageSourceUri = "";
+ object.context = null;
+ }
+ if (message.artifactStorageSourceUri != null && message.hasOwnProperty("artifactStorageSourceUri"))
+ object.artifactStorageSourceUri = message.artifactStorageSourceUri;
+ var keys2;
+ if (message.fileHashes && (keys2 = Object.keys(message.fileHashes)).length) {
+ object.fileHashes = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.fileHashes[keys2[j]] = $root.grafeas.v1.FileHashes.toObject(message.fileHashes[keys2[j]], options);
+ }
+ if (message.context != null && message.hasOwnProperty("context"))
+ object.context = $root.grafeas.v1.SourceContext.toObject(message.context, options);
+ if (message.additionalContexts && message.additionalContexts.length) {
+ object.additionalContexts = [];
+ for (var j = 0; j < message.additionalContexts.length; ++j)
+ object.additionalContexts[j] = $root.grafeas.v1.SourceContext.toObject(message.additionalContexts[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Source to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Source
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Source.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Source
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Source
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Source.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Source";
+ };
+
+ return Source;
+ })();
+
+ v1.FileHashes = (function() {
+
+ /**
+ * Properties of a FileHashes.
+ * @memberof grafeas.v1
+ * @interface IFileHashes
+ * @property {Array.|null} [fileHash] FileHashes fileHash
+ */
+
+ /**
+ * Constructs a new FileHashes.
+ * @memberof grafeas.v1
+ * @classdesc Represents a FileHashes.
+ * @implements IFileHashes
+ * @constructor
+ * @param {grafeas.v1.IFileHashes=} [properties] Properties to set
+ */
+ function FileHashes(properties) {
+ this.fileHash = [];
+ 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]];
+ }
+
+ /**
+ * FileHashes fileHash.
+ * @member {Array.} fileHash
+ * @memberof grafeas.v1.FileHashes
+ * @instance
+ */
+ FileHashes.prototype.fileHash = $util.emptyArray;
+
+ /**
+ * Creates a new FileHashes instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {grafeas.v1.IFileHashes=} [properties] Properties to set
+ * @returns {grafeas.v1.FileHashes} FileHashes instance
+ */
+ FileHashes.create = function create(properties) {
+ return new FileHashes(properties);
+ };
+
+ /**
+ * Encodes the specified FileHashes message. Does not implicitly {@link grafeas.v1.FileHashes.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {grafeas.v1.IFileHashes} message FileHashes message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ FileHashes.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.fileHash != null && message.fileHash.length)
+ for (var i = 0; i < message.fileHash.length; ++i)
+ $root.grafeas.v1.Hash.encode(message.fileHash[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified FileHashes message, length delimited. Does not implicitly {@link grafeas.v1.FileHashes.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {grafeas.v1.IFileHashes} message FileHashes message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ FileHashes.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a FileHashes message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.FileHashes} FileHashes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ FileHashes.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.grafeas.v1.FileHashes();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.fileHash && message.fileHash.length))
+ message.fileHash = [];
+ message.fileHash.push($root.grafeas.v1.Hash.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a FileHashes message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.FileHashes} FileHashes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ FileHashes.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a FileHashes message.
+ * @function verify
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ FileHashes.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.fileHash != null && message.hasOwnProperty("fileHash")) {
+ if (!Array.isArray(message.fileHash))
+ return "fileHash: array expected";
+ for (var i = 0; i < message.fileHash.length; ++i) {
+ var error = $root.grafeas.v1.Hash.verify(message.fileHash[i]);
+ if (error)
+ return "fileHash." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a FileHashes message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.FileHashes} FileHashes
+ */
+ FileHashes.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.FileHashes)
+ return object;
+ var message = new $root.grafeas.v1.FileHashes();
+ if (object.fileHash) {
+ if (!Array.isArray(object.fileHash))
+ throw TypeError(".grafeas.v1.FileHashes.fileHash: array expected");
+ message.fileHash = [];
+ for (var i = 0; i < object.fileHash.length; ++i) {
+ if (typeof object.fileHash[i] !== "object")
+ throw TypeError(".grafeas.v1.FileHashes.fileHash: object expected");
+ message.fileHash[i] = $root.grafeas.v1.Hash.fromObject(object.fileHash[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a FileHashes message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {grafeas.v1.FileHashes} message FileHashes
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ FileHashes.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.fileHash = [];
+ if (message.fileHash && message.fileHash.length) {
+ object.fileHash = [];
+ for (var j = 0; j < message.fileHash.length; ++j)
+ object.fileHash[j] = $root.grafeas.v1.Hash.toObject(message.fileHash[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this FileHashes to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.FileHashes
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ FileHashes.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for FileHashes
+ * @function getTypeUrl
+ * @memberof grafeas.v1.FileHashes
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ FileHashes.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.FileHashes";
+ };
+
+ return FileHashes;
+ })();
+
+ v1.Hash = (function() {
+
+ /**
+ * Properties of a Hash.
+ * @memberof grafeas.v1
+ * @interface IHash
+ * @property {string|null} [type] Hash type
+ * @property {Uint8Array|null} [value] Hash value
+ */
+
+ /**
+ * Constructs a new Hash.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Hash.
+ * @implements IHash
+ * @constructor
+ * @param {grafeas.v1.IHash=} [properties] Properties to set
+ */
+ function Hash(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]];
+ }
+
+ /**
+ * Hash type.
+ * @member {string} type
+ * @memberof grafeas.v1.Hash
+ * @instance
+ */
+ Hash.prototype.type = "";
+
+ /**
+ * Hash value.
+ * @member {Uint8Array} value
+ * @memberof grafeas.v1.Hash
+ * @instance
+ */
+ Hash.prototype.value = $util.newBuffer([]);
+
+ /**
+ * Creates a new Hash instance using the specified properties.
+ * @function create
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {grafeas.v1.IHash=} [properties] Properties to set
+ * @returns {grafeas.v1.Hash} Hash instance
+ */
+ Hash.create = function create(properties) {
+ return new Hash(properties);
+ };
+
+ /**
+ * Encodes the specified Hash message. Does not implicitly {@link grafeas.v1.Hash.verify|verify} messages.
+ * @function encode
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {grafeas.v1.IHash} message Hash message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Hash.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.type);
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
+ writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.value);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Hash message, length delimited. Does not implicitly {@link grafeas.v1.Hash.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {grafeas.v1.IHash} message Hash message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Hash.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Hash message from the specified reader or buffer.
+ * @function decode
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {grafeas.v1.Hash} Hash
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Hash.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.grafeas.v1.Hash();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.type = reader.string();
+ break;
+ }
+ case 2: {
+ message.value = reader.bytes();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Hash message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {grafeas.v1.Hash} Hash
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Hash.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Hash message.
+ * @function verify
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Hash.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.type != null && message.hasOwnProperty("type"))
+ if (!$util.isString(message.type))
+ return "type: string expected";
+ if (message.value != null && message.hasOwnProperty("value"))
+ if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value)))
+ return "value: buffer expected";
+ return null;
+ };
+
+ /**
+ * Creates a Hash message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {grafeas.v1.Hash} Hash
+ */
+ Hash.fromObject = function fromObject(object) {
+ if (object instanceof $root.grafeas.v1.Hash)
+ return object;
+ var message = new $root.grafeas.v1.Hash();
+ if (object.type != null)
+ message.type = String(object.type);
+ if (object.value != null)
+ if (typeof object.value === "string")
+ $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0);
+ else if (object.value.length >= 0)
+ message.value = object.value;
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Hash message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {grafeas.v1.Hash} message Hash
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Hash.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.type = "";
+ if (options.bytes === String)
+ object.value = "";
+ else {
+ object.value = [];
+ if (options.bytes !== Array)
+ object.value = $util.newBuffer(object.value);
+ }
+ }
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = message.type;
+ if (message.value != null && message.hasOwnProperty("value"))
+ object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value;
+ return object;
+ };
+
+ /**
+ * Converts this Hash to JSON.
+ * @function toJSON
+ * @memberof grafeas.v1.Hash
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Hash.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Hash
+ * @function getTypeUrl
+ * @memberof grafeas.v1.Hash
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Hash.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/grafeas.v1.Hash";
+ };
+
+ return Hash;
+ })();
+
+ v1.Command = (function() {
+
+ /**
+ * Properties of a Command.
+ * @memberof grafeas.v1
+ * @interface ICommand
+ * @property {string|null} [name] Command name
+ * @property {Array.|null} [env] Command env
+ * @property {Array.|null} [args] Command args
+ * @property {string|null} [dir] Command dir
+ * @property {string|null} [id] Command id
+ * @property {Array.|null} [waitFor] Command waitFor
+ */
+
+ /**
+ * Constructs a new Command.
+ * @memberof grafeas.v1
+ * @classdesc Represents a Command.
+ * @implements ICommand
+ * @constructor
+ * @param {grafeas.v1.ICommand=} [properties] Properties to set
+ */
+ function Command(properties) {
+ this.env = [];
+ this.args = [];
+ this.waitFor = [];
+ 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]];
+ }
+
+ /**
+ * Command name.
+ * @member {string} name
+ * @memberof grafeas.v1.Command
+ * @instance
+ */
+ Command.prototype.name = "";
+
+ /**
+ * Command env.
+ * @member {Array.} env
+ * @memberof grafeas.v1.Command
+ * @instance
+ */
+ Command.prototype.env = $util.emptyArray;
+
+ /**
+ * Command args.
+ * @member {Array.