diff --git a/packages/google-container/.eslintignore b/packages/google-container/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-container/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-container/.eslintrc.json b/packages/google-container/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-container/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-container/.gitattributes b/packages/google-container/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-container/.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-container/.github/.OwlBot.yaml b/packages/google-container/.github/.OwlBot.yaml
new file mode 100644
index 00000000000..b2174b52997
--- /dev/null
+++ b/packages/google-container/.github/.OwlBot.yaml
@@ -0,0 +1,28 @@
+# 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.
+docker:
+ image: gcr.io/cloud-devrel-public-resources/owlbot-nodejs:latest
+
+deep-remove-regex:
+ - /owl-bot-staging
+
+deep-preserve-regex:
+ - /owl-bot-staging/v1beta1
+
+deep-copy-regex:
+ - source: /google/container/(v.*)/.*-nodejs/(.*)
+ dest: /owl-bot-staging/$1/$2
+
+begin-after-commit-hash: fb91803ccef5d7c695139b22788b309e2197856b
+
diff --git a/packages/google-container/.gitignore b/packages/google-container/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-container/.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-container/.jsdoc.js b/packages/google-container/.jsdoc.js
new file mode 100644
index 00000000000..4734dd15f89
--- /dev/null
+++ b/packages/google-container/.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/container',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-container/.mocharc.js b/packages/google-container/.mocharc.js
new file mode 100644
index 00000000000..0b600509bed
--- /dev/null
+++ b/packages/google-container/.mocharc.js
@@ -0,0 +1,29 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+const config = {
+ "enable-source-maps": true,
+ "throw-deprecation": true,
+ "timeout": 10000,
+ "recursive": true
+}
+if (process.env.MOCHA_THROW_DEPRECATION === 'false') {
+ delete config['throw-deprecation'];
+}
+if (process.env.MOCHA_REPORTER) {
+ config.reporter = process.env.MOCHA_REPORTER;
+}
+if (process.env.MOCHA_REPORTER_OUTPUT) {
+ config['reporter-option'] = `output=${process.env.MOCHA_REPORTER_OUTPUT}`;
+}
+module.exports = config
diff --git a/packages/google-container/.nycrc b/packages/google-container/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-container/.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-container/.prettierignore b/packages/google-container/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-container/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-container/.prettierrc.js b/packages/google-container/.prettierrc.js
new file mode 100644
index 00000000000..d1b95106f4c
--- /dev/null
+++ b/packages/google-container/.prettierrc.js
@@ -0,0 +1,17 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+module.exports = {
+ ...require('gts/.prettierrc.json')
+}
diff --git a/packages/google-container/.readme-partials.yaml b/packages/google-container/.readme-partials.yaml
new file mode 100644
index 00000000000..b2de80b4940
--- /dev/null
+++ b/packages/google-container/.readme-partials.yaml
@@ -0,0 +1,15 @@
+introduction: |-
+ > Node.js idiomatic client for [Kubernetes Engine][product-docs] cluster management.
+
+ [Kubernetes Engine](https://cloud.google.com/kubernetes-engine/docs/) is used for
+ building and managing container based applications, powered by the open source Kubernetes technology.
+body: |-
+
+ ## Relationship to Kubernetes
+
+ `@google-cloud/container` provides a high level API for creating and managing
+ [Google Kubernetes Engine](https://cloud.google.com/gke) clusters on Google Cloud.
+
+ To run commands against the clusters created, you will need to use the
+ [Kubernetes API](https://kubernetes.io/docs/reference/using-api/api-overview/)
+ (and the associated kubectl command-line interface).
diff --git a/packages/google-container/.repo-metadata.json b/packages/google-container/.repo-metadata.json
new file mode 100644
index 00000000000..d50c2b1318c
--- /dev/null
+++ b/packages/google-container/.repo-metadata.json
@@ -0,0 +1,16 @@
+{
+ "language": "nodejs",
+ "repo": "googleapis/nodejs-cloud-container",
+ "name": "container",
+ "issue_tracker": "https://issuetracker.google.com/savedsearches/559746",
+ "default_version": "v1",
+ "api_id": "container.googleapis.com",
+ "distribution_name": "@google-cloud/container",
+ "requires_billing": true,
+ "product_documentation": "https://cloud.google.com/kubernetes-engine",
+ "name_pretty": "Kubernetes Engine Cluster Manager API",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/container/latest",
+ "release_level": "stable",
+ "api_shortname": "container",
+ "library_type": "GAPIC_AUTO"
+}
diff --git a/packages/google-container/CHANGELOG.md b/packages/google-container/CHANGELOG.md
new file mode 100644
index 00000000000..3b6a3617b00
--- /dev/null
+++ b/packages/google-container/CHANGELOG.md
@@ -0,0 +1,538 @@
+# Changelog
+
+[npm history][1]
+
+[1]: https://www.npmjs.com/package/@google-cloud/container?activeTab=versions
+
+## [4.4.0](https://github.com/googleapis/nodejs-cloud-container/compare/v4.3.0...v4.4.0) (2022-11-10)
+
+
+### Features
+
+* Add APIs for GKE Control Plane Logs ([#588](https://github.com/googleapis/nodejs-cloud-container/issues/588)) ([de62f0b](https://github.com/googleapis/nodejs-cloud-container/commit/de62f0bfc4d6972d1bbd48428ec2005ef2ccf890))
+
+
+### Bug Fixes
+
+* **deps:** Use google-gax v3.5.2 ([#582](https://github.com/googleapis/nodejs-cloud-container/issues/582)) ([3c62c1a](https://github.com/googleapis/nodejs-cloud-container/commit/3c62c1adbc913212097f50496e10c4ccfb6f2d86))
+* Update proto definitions ([#586](https://github.com/googleapis/nodejs-cloud-container/issues/586)) ([dbee22e](https://github.com/googleapis/nodejs-cloud-container/commit/dbee22e4f5e793d1e1ebe5cec33edf2128963a60))
+
+## [4.3.0](https://github.com/googleapis/nodejs-cloud-container/compare/v4.2.0...v4.3.0) (2022-10-14)
+
+
+### Features
+
+* Launch GKE Cost Allocations configuration to the v1 GKE API ([#577](https://github.com/googleapis/nodejs-cloud-container/issues/577)) ([b45ac9f](https://github.com/googleapis/nodejs-cloud-container/commit/b45ac9fb6cff9a634ea62b2c9e6998c57bf837ef))
+
+## [4.2.0](https://github.com/googleapis/nodejs-cloud-container/compare/v4.1.3...v4.2.0) (2022-09-22)
+
+
+### Features
+
+* Added High Throughput Logging API for Google Kubernetes Engine ([#571](https://github.com/googleapis/nodejs-cloud-container/issues/571)) ([588b19a](https://github.com/googleapis/nodejs-cloud-container/commit/588b19a19daca6d994a28d04e8b9a8a2f081324b))
+
+
+### Bug Fixes
+
+* Preserve default values in x-goog-request-params header ([#568](https://github.com/googleapis/nodejs-cloud-container/issues/568)) ([575531f](https://github.com/googleapis/nodejs-cloud-container/commit/575531f012d3448eb796f73fda6d62ef9ba425fd))
+
+## [4.1.3](https://github.com/googleapis/nodejs-cloud-container/compare/v4.1.2...v4.1.3) (2022-09-13)
+
+
+### Bug Fixes
+
+* **deps:** Update dependency uuid to v9 ([#564](https://github.com/googleapis/nodejs-cloud-container/issues/564)) ([513d05b](https://github.com/googleapis/nodejs-cloud-container/commit/513d05b38918d0dfd239d4684ee2235a799e6ca5))
+
+## [4.1.2](https://github.com/googleapis/nodejs-cloud-container/compare/v4.1.1...v4.1.2) (2022-09-08)
+
+
+### Bug Fixes
+
+* Allow passing gax instance to client constructor ([#557](https://github.com/googleapis/nodejs-cloud-container/issues/557)) ([e7a1a02](https://github.com/googleapis/nodejs-cloud-container/commit/e7a1a02e990e1eac2954538f444113c5211912ec))
+* better support for fallback mode ([e7a1a02](https://github.com/googleapis/nodejs-cloud-container/commit/e7a1a02e990e1eac2954538f444113c5211912ec))
+
+## [4.1.1](https://github.com/googleapis/nodejs-cloud-container/compare/v4.1.0...v4.1.1) (2022-08-27)
+
+
+### Bug Fixes
+
+* change import long to require ([#558](https://github.com/googleapis/nodejs-cloud-container/issues/558)) ([83df9aa](https://github.com/googleapis/nodejs-cloud-container/commit/83df9aa300b311b4a4928671a518d25a4b38300f))
+* do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-cloud-container/issues/1553)) ([#562](https://github.com/googleapis/nodejs-cloud-container/issues/562)) ([50f317f](https://github.com/googleapis/nodejs-cloud-container/commit/50f317fff66003b40086b219a0e21a5fa1e7608a))
+* use google-gax v3.3.0 ([50f317f](https://github.com/googleapis/nodejs-cloud-container/commit/50f317fff66003b40086b219a0e21a5fa1e7608a))
+
+## [4.1.0](https://github.com/googleapis/nodejs-cloud-container/compare/v4.0.1...v4.1.0) (2022-07-04)
+
+
+### Features
+
+* add Binauthz Evaluation mode support to GKE Classic ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add Binauthz Evaluation mode support to GKE Classic ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add cgroup mode to node system config ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add GKE Identity Service ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add Location Policy API ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add Location Policy API ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add managed prometheus feature ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add network tags to autopilot cluster ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add network tags to autopilot cluster ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add protect config audit api ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add support to modify kubelet pod pid limit in node system configuration ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* add support to modify kubelet pod pid limit in node system configuration ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support enabling Confidential Nodes in the node pool ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support enabling Confidential Nodes in the node pool ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support GKE Cost Allocations ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support GPU timesharing ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support GPU timesharing ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support IPV6 Dual Stack (stack_type) ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support node pool blue-green upgrade ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support node pool blue-green upgrade ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support regapic LRO ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support spot VM ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support Tier 1 bandwidth ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* support Tier 1 bandwidth ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+* update support for node pool labels, taints and network tags ([ebe6500](https://github.com/googleapis/nodejs-cloud-container/commit/ebe650079d2c0dd32780379616f20fe1eaf36ca7))
+
+## [4.0.1](https://github.com/googleapis/nodejs-cloud-container/compare/v4.0.0...v4.0.1) (2022-06-10)
+
+
+### Bug Fixes
+
+* fixes for dynamic routing and streaming descriptors ([#541](https://github.com/googleapis/nodejs-cloud-container/issues/541)) ([87d8c3f](https://github.com/googleapis/nodejs-cloud-container/commit/87d8c3f7488fa122ebefcdabaa597625e1d60d9c))
+
+## [4.0.0](https://github.com/googleapis/nodejs-cloud-container/compare/v3.0.1...v4.0.0) (2022-05-20)
+
+
+### ⚠ BREAKING CHANGES
+
+* update library to use Node 12 (#539)
+
+### Build System
+
+* update library to use Node 12 ([#539](https://github.com/googleapis/nodejs-cloud-container/issues/539)) ([89ca157](https://github.com/googleapis/nodejs-cloud-container/commit/89ca157084eae2575cd2725149f6376fc810164e))
+
+### [3.0.1](https://github.com/googleapis/nodejs-cloud-container/compare/v3.0.0...v3.0.1) (2022-05-06)
+
+
+### Bug Fixes
+
+* clarify the gax-nodejs usage in README ([#1352](https://github.com/googleapis/nodejs-cloud-container/issues/1352)) ([#528](https://github.com/googleapis/nodejs-cloud-container/issues/528)) ([aa9a2a9](https://github.com/googleapis/nodejs-cloud-container/commit/aa9a2a9d7ef253bb11b5d1813a9cb5127a5c5d3b))
+
+## [3.0.0](https://github.com/googleapis/nodejs-cloud-container/compare/v2.6.0...v3.0.0) (2022-02-26)
+
+
+### ⚠ BREAKING CHANGES
+
+* revert bad publishing (#510)
+
+### Bug Fixes
+
+* revert bad publishing ([#510](https://github.com/googleapis/nodejs-cloud-container/issues/510)) ([541fc5b](https://github.com/googleapis/nodejs-cloud-container/commit/541fc5b3637b9dc3c1af722f1c931e6d63129f9f))
+* reverting unintentional breaking change: GetOpenIdConfigRequest, GetOpenIdConfigResponse ([#512](https://github.com/googleapis/nodejs-cloud-container/issues/512)) ([8ed44d7](https://github.com/googleapis/nodejs-cloud-container/commit/8ed44d74d8ec61d49c8f46b78169f1585c02a862))
+
+## [2.6.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.5.0...v2.6.0) (2021-12-09)
+
+
+### Features
+
+* add eslintignore for sameple generated code ([#1302](https://www.github.com/googleapis/nodejs-cloud-container/issues/1302)) ([#497](https://www.github.com/googleapis/nodejs-cloud-container/issues/497)) ([cea38ea](https://www.github.com/googleapis/nodejs-cloud-container/commit/cea38ea9c7b515d133853492ce48de22c843c985))
+
+## [2.5.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.4.4...v2.5.0) (2021-08-23)
+
+
+### Features
+
+* turns on self-signed JWT feature flag ([#480](https://www.github.com/googleapis/nodejs-cloud-container/issues/480)) ([f7a7887](https://www.github.com/googleapis/nodejs-cloud-container/commit/f7a7887be1168b8f15e6de556df5774d1da42b32))
+
+### [2.4.4](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.4.3...v2.4.4) (2021-08-17)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.24.1 ([#477](https://www.github.com/googleapis/nodejs-cloud-container/issues/477)) ([11bdd83](https://www.github.com/googleapis/nodejs-cloud-container/commit/11bdd83b4c676b9c10608c9f505a10261f2bb939))
+
+### [2.4.3](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.4.2...v2.4.3) (2021-08-16)
+
+
+### Bug Fixes
+
+* **build:** migrate to using main branch ([#476](https://www.github.com/googleapis/nodejs-cloud-container/issues/476)) ([7440626](https://www.github.com/googleapis/nodejs-cloud-container/commit/7440626c34f9e7dcc16a6e19a71e5db6eee5b6bf))
+
+### [2.4.2](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.4.1...v2.4.2) (2021-07-16)
+
+
+### Bug Fixes
+
+* Updating WORKSPACE files to use the newest version of the Typescript generator. ([#468](https://www.github.com/googleapis/nodejs-cloud-container/issues/468)) ([2257eff](https://www.github.com/googleapis/nodejs-cloud-container/commit/2257eff6c1d5a50728fecc2fa27881b2addaba68))
+
+### [2.4.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.4.0...v2.4.1) (2021-07-12)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.1 ([#466](https://www.github.com/googleapis/nodejs-cloud-container/issues/466)) ([a1b1e2a](https://www.github.com/googleapis/nodejs-cloud-container/commit/a1b1e2a9c38b103fe3caa804230d53a19b854cd4))
+
+## [2.4.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.3.2...v2.4.0) (2021-07-09)
+
+
+### Features
+
+* allow updating security group on existing clusters ([#464](https://www.github.com/googleapis/nodejs-cloud-container/issues/464)) ([ed09e02](https://www.github.com/googleapis/nodejs-cloud-container/commit/ed09e028126d308cf131f26453fe6c73a73cec6d))
+
+### [2.3.2](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.3.1...v2.3.2) (2021-06-30)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.0 with mTLS ([#459](https://www.github.com/googleapis/nodejs-cloud-container/issues/459)) ([d8ba534](https://www.github.com/googleapis/nodejs-cloud-container/commit/d8ba534408f9573f1da21d337081975fe80f68fa))
+
+### [2.3.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.3.0...v2.3.1) (2021-06-25)
+
+
+### Bug Fixes
+
+* make request optional in all cases ([#454](https://www.github.com/googleapis/nodejs-cloud-container/issues/454)) ([65ac281](https://www.github.com/googleapis/nodejs-cloud-container/commit/65ac2813d05cf21d234e42a52b73dae2f723de0f))
+
+## [2.3.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.2.2...v2.3.0) (2021-06-09)
+
+
+### Features
+
+* support for NodeAutoprovisioning ImageType ([#446](https://www.github.com/googleapis/nodejs-cloud-container/issues/446)) ([e826d24](https://www.github.com/googleapis/nodejs-cloud-container/commit/e826d242fdfbc6831c67eb6abf6c0fb0b12b707a))
+
+### [2.2.2](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.2.1...v2.2.2) (2021-05-25)
+
+
+### Bug Fixes
+
+* GoogleAdsError missing using generator version after 1.3.0 ([#441](https://www.github.com/googleapis/nodejs-cloud-container/issues/441)) ([03134c0](https://www.github.com/googleapis/nodejs-cloud-container/commit/03134c09b67eaa9cf78b06b413169d5ef3f82f3c))
+
+### [2.2.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.2.0...v2.2.1) (2021-05-12)
+
+
+### Bug Fixes
+
+* **deps:** require google-gax v2.12.0 ([#431](https://www.github.com/googleapis/nodejs-cloud-container/issues/431)) ([cdcce07](https://www.github.com/googleapis/nodejs-cloud-container/commit/cdcce07da06d7ee53b2207b8d9dd2f8e0c59a6d7))
+* use require() to load JSON protos ([#434](https://www.github.com/googleapis/nodejs-cloud-container/issues/434)) ([ce2dd09](https://www.github.com/googleapis/nodejs-cloud-container/commit/ce2dd092d84d165f905f2f912f1fdb382c8b69e5))
+
+## [2.2.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.1.2...v2.2.0) (2020-11-25)
+
+
+### Features
+
+* update GKE v1 API ([#401](https://www.github.com/googleapis/nodejs-cloud-container/issues/401)) ([f72f121](https://www.github.com/googleapis/nodejs-cloud-container/commit/f72f1210f63e1fd9b3dd02e0791b1d024d1cbe07))
+
+
+### Bug Fixes
+
+* **browser:** check for fetch on window ([#403](https://www.github.com/googleapis/nodejs-cloud-container/issues/403)) ([40f207e](https://www.github.com/googleapis/nodejs-cloud-container/commit/40f207e3e1ae02f63b9b34c9e957c0caae89c7fb))
+
+### [2.1.2](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.1.1...v2.1.2) (2020-11-07)
+
+
+### Bug Fixes
+
+* do not modify options object, use defaultScopes ([#398](https://www.github.com/googleapis/nodejs-cloud-container/issues/398)) ([e696b91](https://www.github.com/googleapis/nodejs-cloud-container/commit/e696b91a5cd57f213a0f2412f6f513ff44183d41))
+
+### [2.1.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.1.0...v2.1.1) (2020-07-09)
+
+
+### Bug Fixes
+
+* typeo in nodejs .gitattribute ([#358](https://www.github.com/googleapis/nodejs-cloud-container/issues/358)) ([8d4b79a](https://www.github.com/googleapis/nodejs-cloud-container/commit/8d4b79aa731f06e7c31e86ec3f8d0190554f40be))
+
+## [2.1.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v2.0.0...v2.1.0) (2020-06-15)
+
+
+### Features
+
+* move ts target to es2018 from es2016 ([#347](https://www.github.com/googleapis/nodejs-cloud-container/issues/347)) ([67b6724](https://www.github.com/googleapis/nodejs-cloud-container/commit/67b6724ebbb1e9587ccbb1e845e5ffce3144eab6))
+
+
+### Bug Fixes
+
+* proper fallback option handling ([c087af4](https://www.github.com/googleapis/nodejs-cloud-container/commit/c087af449cc24492b58f686f05bcef90a00deeca))
+
+## [2.0.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.7.0...v2.0.0) (2020-06-04)
+
+
+### ⚠ BREAKING CHANGES
+
+* The library now supports Node.js v10+. The last version to support Node.js v8 is tagged legacy-8 on NPM.
+
+### Features
+
+* drop node8 support, support for async iterators ([#318](https://www.github.com/googleapis/nodejs-cloud-container/issues/318)) ([e6338eb](https://www.github.com/googleapis/nodejs-cloud-container/commit/e6338eb9e080a80e3b8361ae13b1c74039974f32))
+
+
+### Bug Fixes
+
+* **test:** don't assign unused variable ([#323](https://www.github.com/googleapis/nodejs-cloud-container/issues/323)) ([671a4b8](https://www.github.com/googleapis/nodejs-cloud-container/commit/671a4b8bc4e49ba6705af418f3bc427485f912ed))
+* export explicit version from protos.js ([#324](https://www.github.com/googleapis/nodejs-cloud-container/issues/324)) ([896c658](https://www.github.com/googleapis/nodejs-cloud-container/commit/896c658e0c7c811c2e71909d138e2e38b431b9e8))
+* regen protos and tests ([#340](https://www.github.com/googleapis/nodejs-cloud-container/issues/340)) ([edbc1c9](https://www.github.com/googleapis/nodejs-cloud-container/commit/edbc1c99e4f50665066ed61593d632201f60e2f5))
+* remove eslint, update gax, fix generated protos, run the generator ([#329](https://www.github.com/googleapis/nodejs-cloud-container/issues/329)) ([c66f3ed](https://www.github.com/googleapis/nodejs-cloud-container/commit/c66f3ed896cd99108f980133205505aa0b49131e))
+* remove unused files from package ([#333](https://www.github.com/googleapis/nodejs-cloud-container/issues/333)) ([ac4c07a](https://www.github.com/googleapis/nodejs-cloud-container/commit/ac4c07a6cb48423f2f3b35b485841e88aa189a22))
+* support request params {key} with no =value ([#338](https://www.github.com/googleapis/nodejs-cloud-container/issues/338)) ([adf4a60](https://www.github.com/googleapis/nodejs-cloud-container/commit/adf4a601a870c0ce961f4011318606e4b29c266f))
+* synth.py clean up for multiple version ([#341](https://www.github.com/googleapis/nodejs-cloud-container/issues/341)) ([29b309d](https://www.github.com/googleapis/nodejs-cloud-container/commit/29b309db935655a6ab5add27e111f72f7d053c07))
+
+## [1.7.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.6.2...v1.7.0) (2020-03-06)
+
+
+### Features
+
+* deferred client initialization ([#304](https://www.github.com/googleapis/nodejs-cloud-container/issues/304)) ([b1b7080](https://www.github.com/googleapis/nodejs-cloud-container/commit/b1b70806289aea73a6e83d3d33983d05856f21f3))
+* export protos in src/index.ts ([acaaeff](https://www.github.com/googleapis/nodejs-cloud-container/commit/acaaeff08ad5505accc15bb496bcd3a29086a5ac))
+
+### [1.6.2](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.6.1...v1.6.2) (2020-02-10)
+
+
+### Bug Fixes
+
+* pass x-goog-request-params header for streaming calls ([ab62cfd](https://www.github.com/googleapis/nodejs-cloud-container/commit/ab62cfddac9ab594318d906b7ee6272131ddaae2))
+
+### [1.6.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.6.0...v1.6.1) (2020-01-28)
+
+
+### Bug Fixes
+
+* enum, bytes, and Long types now accept strings ([595810b](https://www.github.com/googleapis/nodejs-cloud-container/commit/595810b240be49dddf14a05d616b99b398a09efe))
+
+## [1.6.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.5.0...v1.6.0) (2020-01-24)
+
+
+### Features
+
+* bump release level to GA ([#272](https://www.github.com/googleapis/nodejs-cloud-container/issues/272)) ([0d2d210](https://www.github.com/googleapis/nodejs-cloud-container/commit/0d2d21028e6323fd836e6a7ac166c65d39b7534a))
+
+## [1.5.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.4.0...v1.5.0) (2020-01-06)
+
+
+### Features
+
+* move to typescript code micro-generator ([#260](https://www.github.com/googleapis/nodejs-cloud-container/issues/260)) ([e2b189a](https://www.github.com/googleapis/nodejs-cloud-container/commit/e2b189a57ce1df87f9ad2123f48f665469812ad9))
+
+
+### Bug Fixes
+
+* **deps:** pin TypeScript below 3.7.0 ([bcc3eaa](https://www.github.com/googleapis/nodejs-cloud-container/commit/bcc3eaa20adc266db2a641834cc5f8561e03b825))
+* better client close(), update .nycrc ([41c6125](https://www.github.com/googleapis/nodejs-cloud-container/commit/41c6125b56c61ebed870fdb0daa01c29dd71c832))
+
+## [1.4.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.3.1...v1.4.0) (2019-11-14)
+
+
+### Features
+
+* support listUsableSubnetworks rpc and new node config ([#246](https://www.github.com/googleapis/nodejs-cloud-container/issues/246)) ([08f2e19](https://www.github.com/googleapis/nodejs-cloud-container/commit/08f2e19c9bc3eff01adf90b59405c73d0a4f190a))
+* **docs:** bump release level to beta ([#249](https://www.github.com/googleapis/nodejs-cloud-container/issues/249)) ([3651e6a](https://www.github.com/googleapis/nodejs-cloud-container/commit/3651e6a2cd7bf28da94a6d3d5d57861a15d8e332))
+
+
+### Bug Fixes
+
+* **docs:** snippets are now replaced in jsdoc comments ([#245](https://www.github.com/googleapis/nodejs-cloud-container/issues/245)) ([31fcb61](https://www.github.com/googleapis/nodejs-cloud-container/commit/31fcb616761b9f23f380be6fbe20f7a0d290a5a1))
+
+### [1.3.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.3.0...v1.3.1) (2019-10-22)
+
+
+### Bug Fixes
+
+* **deps:** bump google-gax to 1.7.5 ([#240](https://www.github.com/googleapis/nodejs-cloud-container/issues/240)) ([fefaf21](https://www.github.com/googleapis/nodejs-cloud-container/commit/fefaf21f74c817f6b8b6b0ed7a19346c44878d96))
+
+## [1.3.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.2.0...v1.3.0) (2019-10-09)
+
+
+### Bug Fixes
+
+* use compatible version of google-gax ([c39495e](https://www.github.com/googleapis/nodejs-cloud-container/commit/c39495e))
+
+
+### Features
+
+* .d.ts for protos ([#231](https://www.github.com/googleapis/nodejs-cloud-container/issues/231)) ([290fc8a](https://www.github.com/googleapis/nodejs-cloud-container/commit/290fc8a))
+
+## [1.2.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.1.4...v1.2.0) (2019-09-16)
+
+
+### Features
+
+* load protos from JSON, grpc-fallback support ([9d931ff](https://www.github.com/googleapis/nodejs-cloud-container/commit/9d931ff))
+
+### [1.1.4](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.1.3...v1.1.4) (2019-08-28)
+
+
+### Bug Fixes
+
+* include node version with headers ([#221](https://www.github.com/googleapis/nodejs-cloud-container/issues/221)) ([28892af](https://www.github.com/googleapis/nodejs-cloud-container/commit/28892af))
+* **docs:** stop linking reference documents to anchor ([2934b37](https://www.github.com/googleapis/nodejs-cloud-container/commit/2934b37))
+
+### [1.1.3](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.1.2...v1.1.3) (2019-06-26)
+
+
+### Bug Fixes
+
+* **docs:** link to reference docs section on googleapis.dev ([#210](https://www.github.com/googleapis/nodejs-cloud-container/issues/210)) ([cd81c9c](https://www.github.com/googleapis/nodejs-cloud-container/commit/cd81c9c))
+
+### [1.1.2](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.1.1...v1.1.2) (2019-06-21)
+
+
+### Bug Fixes
+
+* **docs:** provide clarification re: gke vs. Kubernetes ([#207](https://www.github.com/googleapis/nodejs-cloud-container/issues/207)) ([bc8e2cc](https://www.github.com/googleapis/nodejs-cloud-container/commit/bc8e2cc))
+
+### [1.1.1](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.1.0...v1.1.1) (2019-06-14)
+
+
+### Bug Fixes
+
+* **docs:** move to new client docs URL ([#205](https://www.github.com/googleapis/nodejs-cloud-container/issues/205)) ([f35ee9a](https://www.github.com/googleapis/nodejs-cloud-container/commit/f35ee9a))
+
+## [1.1.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v1.0.0...v1.1.0) (2019-06-05)
+
+
+### Features
+
+* support apiEndpoint override in client constructor ([#203](https://www.github.com/googleapis/nodejs-cloud-container/issues/203)) ([92be0f8](https://www.github.com/googleapis/nodejs-cloud-container/commit/92be0f8))
+
+## [1.0.0](https://www.github.com/googleapis/nodejs-cloud-container/compare/v0.3.1...v1.0.0) (2019-05-13)
+
+
+### Bug Fixes
+
+* DEADLINE_EXCEEDED retry code is idempotent ([#192](https://www.github.com/googleapis/nodejs-cloud-container/issues/192)) ([66082aa](https://www.github.com/googleapis/nodejs-cloud-container/commit/66082aa))
+* **deps:** update dependency google-gax to v1 ([#191](https://www.github.com/googleapis/nodejs-cloud-container/issues/191)) ([e4470fa](https://www.github.com/googleapis/nodejs-cloud-container/commit/e4470fa))
+* DEADLINE_EXCEEDED is no longer retried ([16453ff](https://www.github.com/googleapis/nodejs-cloud-container/commit/16453ff))
+* **deps:** update dependency google-gax to ^0.26.0 ([#181](https://www.github.com/googleapis/nodejs-cloud-container/issues/181)) ([0ee0e98](https://www.github.com/googleapis/nodejs-cloud-container/commit/0ee0e98))
+* include 'x-goog-request-params' header in requests ([#175](https://www.github.com/googleapis/nodejs-cloud-container/issues/175)) ([0d3ba60](https://www.github.com/googleapis/nodejs-cloud-container/commit/0d3ba60))
+
+
+### Build System
+
+* upgrade engines field to >=8.10.0 ([#183](https://www.github.com/googleapis/nodejs-cloud-container/issues/183)) ([7a6a24b](https://www.github.com/googleapis/nodejs-cloud-container/commit/7a6a24b))
+
+
+### BREAKING CHANGES
+
+* upgrade engines field to >=8.10.0 (#183)
+
+## v0.3.1
+
+03-12-2019 13:44 PDT
+
+This patch release has a few bug fixes, dependency updates, and doc fixes. Enjoy!
+
+### Bug fixes
+- fix: throw on invalid credentials ([#159](https://github.com/googleapis/nodejs-cloud-container/pull/159))
+
+### Dependencies
+- fix(deps): update dependency google-gax to ^0.25.0 ([#152](https://github.com/googleapis/nodejs-cloud-container/pull/152))
+
+### Documentation
+- docs: update links in contrib guide ([#161](https://github.com/googleapis/nodejs-cloud-container/pull/161))
+- docs: update contributing path in README ([#156](https://github.com/googleapis/nodejs-cloud-container/pull/156))
+- docs: move CONTRIBUTING.md to root ([#155](https://github.com/googleapis/nodejs-cloud-container/pull/155))
+- docs: add lint/fix example to contributing guide ([#153](https://github.com/googleapis/nodejs-cloud-container/pull/153))
+
+### Internal / Testing Changes
+- refactor: update json import paths ([#167](https://github.com/googleapis/nodejs-cloud-container/pull/167))
+- build: Add docuploader credentials to node publish jobs ([#165](https://github.com/googleapis/nodejs-cloud-container/pull/165))
+- build: update release config ([#163](https://github.com/googleapis/nodejs-cloud-container/pull/163))
+- build: use node10 to run samples-test, system-test etc ([#164](https://github.com/googleapis/nodejs-cloud-container/pull/164))
+- chore(deps): update dependency mocha to v6
+- build: use linkinator for docs test ([#160](https://github.com/googleapis/nodejs-cloud-container/pull/160))
+- build: create docs test npm scripts ([#158](https://github.com/googleapis/nodejs-cloud-container/pull/158))
+- build: test using @grpc/grpc-js in CI ([#157](https://github.com/googleapis/nodejs-cloud-container/pull/157))
+- chore(deps): update dependency eslint-config-prettier to v4 ([#151](https://github.com/googleapis/nodejs-cloud-container/pull/151))
+- chore: update the date in the copyright header ([#150](https://github.com/googleapis/nodejs-cloud-container/pull/150))
+- build: check broken links in generated docs ([#144](https://github.com/googleapis/nodejs-cloud-container/pull/144))
+- test: add sample tests ([#143](https://github.com/googleapis/nodejs-cloud-container/pull/143))
+- chore(build): inject yoshi automation key ([#142](https://github.com/googleapis/nodejs-cloud-container/pull/142))
+
+## v0.3.0
+
+12-11-2018 10:08 PST
+
+### Implementation Changes
+**This library no longer support Node.js 4.x and 9.x, use of these out of LTS versions of Node.js with this library might not work in the future.**
+- fix: drop support for node.js 4.x and 9.x ([#46](https://github.com/googleapis/nodejs-cloud-container/pull/46))
+
+### Dependencies
+- fix(deps): update dependency google-gax to ^0.22.0 ([#117](https://github.com/googleapis/nodejs-cloud-container/pull/117))
+- chore(deps): update dependency @google-cloud/nodejs-repo-tools to v3 ([#113](https://github.com/googleapis/nodejs-cloud-container/pull/113))
+- chore(deps): update dependency eslint-plugin-node to v8 ([#102](https://github.com/googleapis/nodejs-cloud-container/pull/102))
+- chore(deps): update dependency eslint-plugin-prettier to v3 ([#86](https://github.com/googleapis/nodejs-cloud-container/pull/86))
+- fix(deps): update dependency google-gax to ^0.20.0 ([#75](https://github.com/googleapis/nodejs-cloud-container/pull/75))
+- Remove unused dependencies ([#72](https://github.com/googleapis/nodejs-cloud-container/pull/72))
+- chore(deps): update dependency nyc to v13 ([#67](https://github.com/googleapis/nodejs-cloud-container/pull/67))
+- fix(deps): update dependency google-gax to ^0.19.0 ([#66](https://github.com/googleapis/nodejs-cloud-container/pull/66))
+- chore(deps): update dependency eslint-config-prettier to v3 ([#65](https://github.com/googleapis/nodejs-cloud-container/pull/65))
+- chore(deps): lock file maintenance ([#62](https://github.com/googleapis/nodejs-cloud-container/pull/62))
+- chore(deps): lock file maintenance ([#61](https://github.com/googleapis/nodejs-cloud-container/pull/61))
+- fix(deps): update dependency google-gax to ^0.18.0 ([#58](https://github.com/googleapis/nodejs-cloud-container/pull/58))
+- chore(deps): lock file maintenance ([#57](https://github.com/googleapis/nodejs-cloud-container/pull/57))
+- chore(deps): lock file maintenance ([#54](https://github.com/googleapis/nodejs-cloud-container/pull/54))
+- chore(deps): update dependency eslint-plugin-node to v7 ([#52](https://github.com/googleapis/nodejs-cloud-container/pull/52))
+- chore(deps): lock file maintenance ([#51](https://github.com/googleapis/nodejs-cloud-container/pull/51))
+- chore(deps): lock file maintenance ([#49](https://github.com/googleapis/nodejs-cloud-container/pull/49))
+- chore(deps): lock file maintenance ([#48](https://github.com/googleapis/nodejs-cloud-container/pull/48))
+- chore(deps): lock file maintenance ([#47](https://github.com/googleapis/nodejs-cloud-container/pull/47))
+- chore(deps): lock file maintenance ([#45](https://github.com/googleapis/nodejs-cloud-container/pull/45))
+- chore(deps): lock file maintenance ([#44](https://github.com/googleapis/nodejs-cloud-container/pull/44))
+- chore(deps): update dependency @google-cloud/nodejs-repo-tools to v2.3.0 ([#41](https://github.com/googleapis/nodejs-cloud-container/pull/41))
+
+### Documentation
+- docs: update readme badges ([#127](https://github.com/googleapis/nodejs-cloud-container/pull/127))
+- docs(samples): updated samples code to use async await ([#122](https://github.com/googleapis/nodejs-cloud-container/pull/122))
+- fix(docs): README.md using @google-cloud/cloud-container ([#114](https://github.com/googleapis/nodejs-cloud-container/pull/114))
+
+### Internal / Testing Changes
+- chore: fix publish.sh permission +x ([#138](https://github.com/googleapis/nodejs-cloud-container/pull/138))
+- fix(build): fix Kokoro release script ([#137](https://github.com/googleapis/nodejs-cloud-container/pull/137))
+- build: add Kokoro configs for autorelease ([#136](https://github.com/googleapis/nodejs-cloud-container/pull/136))
+- chore: always nyc report before calling codecov ([#133](https://github.com/googleapis/nodejs-cloud-container/pull/133))
+- chore: nyc ignore build/test by default ([#132](https://github.com/googleapis/nodejs-cloud-container/pull/132))
+- chore: clean up usage of prettier and eslint ([#131](https://github.com/googleapis/nodejs-cloud-container/pull/131))
+- chore: update license file ([#129](https://github.com/googleapis/nodejs-cloud-container/pull/129))
+- fix(build): fix system key decryption ([#125](https://github.com/googleapis/nodejs-cloud-container/pull/125))
+- chore: add synth.metadata
+- chore: update eslintignore config ([#116](https://github.com/googleapis/nodejs-cloud-container/pull/116))
+- Update synth.py yaml path ([#115](https://github.com/googleapis/nodejs-cloud-container/pull/115))
+- chore: drop contributors from multiple places ([#112](https://github.com/googleapis/nodejs-cloud-container/pull/112))
+- chore: use latest npm on Windows ([#111](https://github.com/googleapis/nodejs-cloud-container/pull/111))
+- chore: update CircleCI config ([#109](https://github.com/googleapis/nodejs-cloud-container/pull/109))
+- chore: include build in eslintignore ([#106](https://github.com/googleapis/nodejs-cloud-container/pull/106))
+- chore: update issue templates ([#100](https://github.com/googleapis/nodejs-cloud-container/pull/100))
+- chore: remove old issue template ([#98](https://github.com/googleapis/nodejs-cloud-container/pull/98))
+- build: run tests on node11 ([#97](https://github.com/googleapis/nodejs-cloud-container/pull/97))
+- chores(build): do not collect sponge.xml from windows builds ([#96](https://github.com/googleapis/nodejs-cloud-container/pull/96))
+- chores(build): run codecov on continuous builds ([#95](https://github.com/googleapis/nodejs-cloud-container/pull/95))
+- chore: update new issue template ([#94](https://github.com/googleapis/nodejs-cloud-container/pull/94))
+- build: fix codecov uploading on Kokoro ([#89](https://github.com/googleapis/nodejs-cloud-container/pull/89))
+- Update kokoro config ([#87](https://github.com/googleapis/nodejs-cloud-container/pull/87))
+- Update kokoro config ([#83](https://github.com/googleapis/nodejs-cloud-container/pull/83))
+- Update CI config ([#82](https://github.com/googleapis/nodejs-cloud-container/pull/82))
+- test: remove appveyor config ([#81](https://github.com/googleapis/nodejs-cloud-container/pull/81))
+- Update the CI config ([#80](https://github.com/googleapis/nodejs-cloud-container/pull/80))
+- Enable prefer-const in the eslint config ([#78](https://github.com/googleapis/nodejs-cloud-container/pull/78))
+- Enable no-var in eslint ([#77](https://github.com/googleapis/nodejs-cloud-container/pull/77))
+- Switch to let/const ([#76](https://github.com/googleapis/nodejs-cloud-container/pull/76))
+- Update CI config ([#74](https://github.com/googleapis/nodejs-cloud-container/pull/74))
+- Update CI Config ([#73](https://github.com/googleapis/nodejs-cloud-container/pull/73))
+- Retry npm install in CI ([#71](https://github.com/googleapis/nodejs-cloud-container/pull/71))
+- add templates to synth.py ([#68](https://github.com/googleapis/nodejs-cloud-container/pull/68))
+- chore: do not use npm ci ([#64](https://github.com/googleapis/nodejs-cloud-container/pull/64))
+- chore: ignore package-lock.json ([#63](https://github.com/googleapis/nodejs-cloud-container/pull/63))
+- chore: update renovate config ([#60](https://github.com/googleapis/nodejs-cloud-container/pull/60))
+- remove that whitespace ([#59](https://github.com/googleapis/nodejs-cloud-container/pull/59))
+- chore: move mocha options to mocha.opts ([#55](https://github.com/googleapis/nodejs-cloud-container/pull/55))
+- chore: require node 8 for samples ([#56](https://github.com/googleapis/nodejs-cloud-container/pull/56))
+- test: use strictEqual in tests ([#53](https://github.com/googleapis/nodejs-cloud-container/pull/53))
+- Check in synth script and update gax dependency ([#43](https://github.com/googleapis/nodejs-cloud-container/pull/43))
+- fix: update to the latest eslint ([#40](https://github.com/googleapis/nodejs-cloud-container/pull/40))
+- Configure Renovate ([#33](https://github.com/googleapis/nodejs-cloud-container/pull/33))
+- refactor: drop repo-tool as an exec wrapper ([#39](https://github.com/googleapis/nodejs-cloud-container/pull/39))
+- fix: update linking for samples ([#36](https://github.com/googleapis/nodejs-cloud-container/pull/36))
+- chore: update sample lockfiles ([#38](https://github.com/googleapis/nodejs-cloud-container/pull/38))
+- Update nyc to the latest version 🚀 ([#30](https://github.com/googleapis/nodejs-cloud-container/pull/30))
+- chore: lock files maintenance ([#29](https://github.com/googleapis/nodejs-cloud-container/pull/29))
+- chore: the ultimate fix for repo-tools EPERM ([#28](https://github.com/googleapis/nodejs-cloud-container/pull/28))
+- chore: timeout for system test ([#27](https://github.com/googleapis/nodejs-cloud-container/pull/27))
+- chore: lock files maintenance ([#26](https://github.com/googleapis/nodejs-cloud-container/pull/26))
+- chore: test on node10 ([#25](https://github.com/googleapis/nodejs-cloud-container/pull/25))
+- chore: lock files maintenance ([#24](https://github.com/googleapis/nodejs-cloud-container/pull/24))
diff --git a/packages/google-container/CODE_OF_CONDUCT.md b/packages/google-container/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-container/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-container/CONTRIBUTING.md b/packages/google-container/CONTRIBUTING.md
new file mode 100644
index 00000000000..3a7fe115511
--- /dev/null
+++ b/packages/google-container/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 Kubernetes Engine Cluster Manager API 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=container.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-container/LICENSE b/packages/google-container/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-container/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-container/README.md b/packages/google-container/README.md
new file mode 100644
index 00000000000..d452abe9fad
--- /dev/null
+++ b/packages/google-container/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`."
+
+
+# [Kubernetes Engine Cluster Manager API: Node.js Client](https://github.com/googleapis/nodejs-cloud-container)
+
+[](https://cloud.google.com/terms/launch-stages)
+[](https://www.npmjs.org/package/@google-cloud/container)
+
+
+
+
+> Node.js idiomatic client for [Kubernetes Engine][product-docs] cluster management.
+
+[Kubernetes Engine](https://cloud.google.com/kubernetes-engine/docs/) is used for
+building and managing container based applications, powered by the open source Kubernetes technology.
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/nodejs-cloud-container/blob/main/CHANGELOG.md).
+
+* [Kubernetes Engine Cluster Manager API Node.js Client API Reference][client-docs]
+* [Kubernetes Engine Cluster Manager API Documentation][product-docs]
+* [github.com/googleapis/nodejs-cloud-container](https://github.com/googleapis/nodejs-cloud-container)
+
+Read more about the client libraries for Cloud APIs, including the older
+Google APIs Client Libraries, in [Client Libraries Explained][explained].
+
+[explained]: https://cloud.google.com/apis/docs/client-libraries-explained
+
+**Table of contents:**
+
+
+* [Quickstart](#quickstart)
+ * [Before you begin](#before-you-begin)
+ * [Installing the client library](#installing-the-client-library)
+ * [Using the client library](#using-the-client-library)
+* [Samples](#samples)
+* [Versioning](#versioning)
+* [Contributing](#contributing)
+* [License](#license)
+
+## Quickstart
+
+### Before you begin
+
+1. [Select or create a Cloud Platform project][projects].
+1. [Enable billing for your project][billing].
+1. [Enable the Kubernetes Engine Cluster Manager API 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/container
+```
+
+
+### Using the client library
+
+```javascript
+async function main() {
+ const container = require('@google-cloud/container');
+
+ // Create the Cluster Manager Client
+ const client = new container.v1.ClusterManagerClient();
+
+ async function quickstart() {
+ const zone = 'us-central1-a';
+ const projectId = await client.getProjectId();
+ const request = {
+ projectId: projectId,
+ zone: zone,
+ };
+
+ const [response] = await client.listClusters(request);
+ console.log('Clusters: ', response);
+ }
+ quickstart();
+}
+
+main().catch(console.error);
+
+```
+
+## Relationship to Kubernetes
+
+`@google-cloud/container` provides a high level API for creating and managing
+[Google Kubernetes Engine](https://cloud.google.com/gke) clusters on Google Cloud.
+
+To run commands against the clusters created, you will need to use the
+[Kubernetes API](https://kubernetes.io/docs/reference/using-api/api-overview/)
+(and the associated kubectl command-line interface).
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/nodejs-cloud-container/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample.
+
+| Sample | Source Code | Try it |
+| --------------------------- | --------------------------------- | ------ |
+| Create_cluster | [source code](https://github.com/googleapis/nodejs-cloud-container/blob/main/samples/create_cluster.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-cloud-container&page=editor&open_in_editor=samples/create_cluster.js,samples/README.md) |
+| Delete_cluster | [source code](https://github.com/googleapis/nodejs-cloud-container/blob/main/samples/delete_cluster.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-cloud-container&page=editor&open_in_editor=samples/delete_cluster.js,samples/README.md) |
+| Quickstart | [source code](https://github.com/googleapis/nodejs-cloud-container/blob/main/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-cloud-container&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) |
+
+
+
+The [Kubernetes Engine Cluster Manager API 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/container@legacy-8` installs client libraries
+for versions compatible with Node.js 8.
+
+## Versioning
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways
+unless absolutely necessary (e.g. because of critical security issues) or with
+an extensive deprecation period. Issues and requests against **stable** libraries
+are addressed with the highest priority.
+
+
+
+
+
+
+More Information: [Google Cloud Platform Launch Stages][launch_stages]
+
+[launch_stages]: https://cloud.google.com/terms/launch-stages
+
+## Contributing
+
+Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-cloud-container/blob/main/CONTRIBUTING.md).
+
+Please note that this `README.md`, the `samples/README.md`,
+and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`)
+are generated from a central template. To edit one of these files, make an edit
+to its templates in
+[directory](https://github.com/googleapis/synthtool).
+
+## License
+
+Apache Version 2.0
+
+See [LICENSE](https://github.com/googleapis/nodejs-cloud-container/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/container/latest
+[product-docs]: https://cloud.google.com/kubernetes-engine
+[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=container.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-container/linkinator.config.json b/packages/google-container/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-container/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-container/package.json b/packages/google-container/package.json
new file mode 100644
index 00000000000..5b4f31b2a4b
--- /dev/null
+++ b/packages/google-container/package.json
@@ -0,0 +1,67 @@
+{
+ "name": "@google-cloud/container",
+ "description": "Google Container Engine API client for Node.js",
+ "version": "4.4.0",
+ "license": "Apache-2.0",
+ "author": "Google Inc",
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "repository": "googleapis/nodejs-cloud-container",
+ "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 container",
+ "container",
+ "Google Container Engine API"
+ ],
+ "scripts": {
+ "test": "c8 mocha build/test",
+ "samples-test": "cd samples/ && npm link ../ && npm install && npm test && cd ../",
+ "system-test": "mocha build/system-test",
+ "lint": "gts check",
+ "fix": "gts fix",
+ "docs": "jsdoc -c .jsdoc.js",
+ "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"
+ },
+ "dependencies": {
+ "google-gax": "^3.5.2"
+ },
+ "devDependencies": {
+ "@types/mocha": "^9.0.0",
+ "@types/node": "^18.0.0",
+ "@types/sinon": "^10.0.0",
+ "c8": "^7.0.0",
+ "gts": "^3.1.0",
+ "jsdoc": "^4.0.0",
+ "jsdoc-fresh": "^2.0.0",
+ "jsdoc-region-tag": "^2.0.0",
+ "linkinator": "^4.0.0",
+ "mocha": "^9.2.2",
+ "null-loader": "^4.0.0",
+ "pack-n-play": "^1.0.0-2",
+ "sinon": "^14.0.0",
+ "ts-loader": "^9.0.0",
+ "typescript": "^4.6.4",
+ "webpack": "^5.0.0",
+ "webpack-cli": "^4.0.0"
+ }
+}
diff --git a/packages/google-container/protos/google/container/v1/cluster_service.proto b/packages/google-container/protos/google/container/v1/cluster_service.proto
new file mode 100644
index 00000000000..bcd0f13b48e
--- /dev/null
+++ b/packages/google-container/protos/google/container/v1/cluster_service.proto
@@ -0,0 +1,4522 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.container.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/duration.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/timestamp.proto";
+import "google/protobuf/wrappers.proto";
+import "google/rpc/code.proto";
+import "google/rpc/status.proto";
+
+option csharp_namespace = "Google.Cloud.Container.V1";
+option go_package = "google.golang.org/genproto/googleapis/container/v1;container";
+option java_multiple_files = true;
+option java_outer_classname = "ClusterServiceProto";
+option java_package = "com.google.container.v1";
+option php_namespace = "Google\\Cloud\\Container\\V1";
+option ruby_package = "Google::Cloud::Container::V1";
+option (google.api.resource_definition) = {
+ type: "pubsub.googleapis.com/Topic"
+ pattern: "projects/{project}/topics/{topic}"
+};
+
+// Google Kubernetes Engine Cluster Manager v1
+service ClusterManager {
+ option (google.api.default_host) = "container.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Lists all clusters owned by a project in either the specified zone or all
+ // zones.
+ rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*}/clusters"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/clusters"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone";
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Gets the details of a specific cluster.
+ rpc GetCluster(GetClusterRequest) returns (Cluster) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/clusters/*}"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a cluster, consisting of the specified number and type of Google
+ // Compute Engine instances.
+ //
+ // By default, the cluster is created in the project's
+ // [default
+ // network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks).
+ //
+ // One firewall is added for the cluster. After cluster creation,
+ // the Kubelet creates routes for each node to allow the containers
+ // on that node to communicate with all other instances in the
+ // cluster.
+ //
+ // Finally, an entry is added to the project's global metadata indicating
+ // which CIDR range the cluster is using.
+ rpc CreateCluster(CreateClusterRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*}/clusters"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster";
+ option (google.api.method_signature) = "parent,cluster";
+ }
+
+ // Updates the settings of a specific cluster.
+ rpc UpdateCluster(UpdateClusterRequest) returns (Operation) {
+ option (google.api.http) = {
+ put: "/v1/{name=projects/*/locations/*/clusters/*}"
+ body: "*"
+ additional_bindings {
+ put: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,update";
+ option (google.api.method_signature) = "name,update";
+ }
+
+ // Updates the version and/or image type for the specified node pool.
+ rpc UpdateNodePool(UpdateNodePoolRequest) returns (Operation) {
+ option (google.api.http) = {
+ put: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/update"
+ body: "*"
+ }
+ };
+ }
+
+ // Sets the autoscaling settings for the specified node pool.
+ rpc SetNodePoolAutoscaling(SetNodePoolAutoscalingRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setAutoscaling"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/autoscaling"
+ body: "*"
+ }
+ };
+ }
+
+ // Sets the logging service for a specific cluster.
+ rpc SetLoggingService(SetLoggingServiceRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setLogging"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/logging"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,logging_service";
+ option (google.api.method_signature) = "name,logging_service";
+ }
+
+ // Sets the monitoring service for a specific cluster.
+ rpc SetMonitoringService(SetMonitoringServiceRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setMonitoring"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/monitoring"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,monitoring_service";
+ option (google.api.method_signature) = "name,monitoring_service";
+ }
+
+ // Sets the addons for a specific cluster.
+ rpc SetAddonsConfig(SetAddonsConfigRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setAddons"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/addons"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,addons_config";
+ option (google.api.method_signature) = "name,addons_config";
+ }
+
+ // Sets the locations for a specific cluster.
+ // Deprecated. Use
+ // [projects.locations.clusters.update](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/update)
+ // instead.
+ rpc SetLocations(SetLocationsRequest) returns (Operation) {
+ option deprecated = true;
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setLocations"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/locations"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,locations";
+ option (google.api.method_signature) = "name,locations";
+ }
+
+ // Updates the master for a specific cluster.
+ rpc UpdateMaster(UpdateMasterRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:updateMaster"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/master"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,master_version";
+ option (google.api.method_signature) = "name,master_version";
+ }
+
+ // Sets master auth materials. Currently supports changing the admin password
+ // or a specific cluster, either via password generation or explicitly setting
+ // the password.
+ rpc SetMasterAuth(SetMasterAuthRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setMasterAuth"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:setMasterAuth"
+ body: "*"
+ }
+ };
+ }
+
+ // Deletes the cluster, including the Kubernetes endpoint and all worker
+ // nodes.
+ //
+ // Firewalls and routes that were configured during cluster creation
+ // are also deleted.
+ //
+ // Other Google Compute Engine resources that might be in use by the cluster,
+ // such as load balancer resources, are not deleted if they weren't present
+ // when the cluster was initially created.
+ rpc DeleteCluster(DeleteClusterRequest) returns (Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/clusters/*}"
+ additional_bindings {
+ delete: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Lists all operations in a project in a specific zone or all zones.
+ rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*}/operations"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/operations"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone";
+ }
+
+ // Gets the specified operation.
+ rpc GetOperation(GetOperationRequest) returns (Operation) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/operations/*}"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/operations/{operation_id}"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,operation_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Cancels the specified operation.
+ rpc CancelOperation(CancelOperationRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/operations/*}:cancel"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/operations/{operation_id}:cancel"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,operation_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Returns configuration info about the Google Kubernetes Engine service.
+ rpc GetServerConfig(GetServerConfigRequest) returns (ServerConfig) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*}/serverConfig"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/serverconfig"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets the public component of the cluster signing keys in
+ // JSON Web Key format.
+ // This API is not yet intended for general use, and is not available for all
+ // clusters.
+ rpc GetJSONWebKeys(GetJSONWebKeysRequest) returns (GetJSONWebKeysResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*/clusters/*}/jwks"
+ };
+ }
+
+ // Lists the node pools for a cluster.
+ rpc ListNodePools(ListNodePoolsRequest) returns (ListNodePoolsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*/locations/*/clusters/*}/nodePools"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Retrieves the requested node pool.
+ rpc GetNodePool(GetNodePoolRequest) returns (NodePool) {
+ option (google.api.http) = {
+ get: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}"
+ additional_bindings {
+ get: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Creates a node pool for a cluster.
+ rpc CreateNodePool(CreateNodePoolRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=projects/*/locations/*/clusters/*}/nodePools"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool";
+ option (google.api.method_signature) = "parent,node_pool";
+ }
+
+ // Deletes a node pool from a cluster.
+ rpc DeleteNodePool(DeleteNodePoolRequest) returns (Operation) {
+ option (google.api.http) = {
+ delete: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}"
+ additional_bindings {
+ delete: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // CompleteNodePoolUpgrade will signal an on-going node pool upgrade to
+ // complete.
+ rpc CompleteNodePoolUpgrade(CompleteNodePoolUpgradeRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}:completeUpgrade"
+ body: "*"
+ };
+ }
+
+ // Rolls back a previously Aborted or Failed NodePool upgrade.
+ // This makes no changes if the last upgrade successfully completed.
+ rpc RollbackNodePoolUpgrade(RollbackNodePoolUpgradeRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}:rollback"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}:rollback"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Sets the NodeManagement options for a node pool.
+ rpc SetNodePoolManagement(SetNodePoolManagementRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setManagement"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/setManagement"
+ body: "*"
+ }
+ };
+ }
+
+ // Sets labels on a cluster.
+ rpc SetLabels(SetLabelsRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setResourceLabels"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/resourceLabels"
+ body: "*"
+ }
+ };
+ }
+
+ // Enables or disables the ABAC authorization mechanism on a cluster.
+ rpc SetLegacyAbac(SetLegacyAbacRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setLegacyAbac"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/legacyAbac"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,enabled";
+ option (google.api.method_signature) = "name,enabled";
+ }
+
+ // Starts master IP rotation.
+ rpc StartIPRotation(StartIPRotationRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:startIpRotation"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:startIpRotation"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Completes master IP rotation.
+ rpc CompleteIPRotation(CompleteIPRotationRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:completeIpRotation"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:completeIpRotation"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
+ option (google.api.method_signature) = "name";
+ }
+
+ // Sets the size for a specific node pool. The new size will be used for all
+ // replicas, including future replicas created by modifying
+ // [NodePool.locations][google.container.v1.NodePool.locations].
+ rpc SetNodePoolSize(SetNodePoolSizeRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setSize"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/setSize"
+ body: "*"
+ }
+ };
+ }
+
+ // Enables or disables Network Policy for a cluster.
+ rpc SetNetworkPolicy(SetNetworkPolicyRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setNetworkPolicy"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:setNetworkPolicy"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,network_policy";
+ option (google.api.method_signature) = "name,network_policy";
+ }
+
+ // Sets the maintenance policy for a cluster.
+ rpc SetMaintenancePolicy(SetMaintenancePolicyRequest) returns (Operation) {
+ option (google.api.http) = {
+ post: "/v1/{name=projects/*/locations/*/clusters/*}:setMaintenancePolicy"
+ body: "*"
+ additional_bindings {
+ post: "/v1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:setMaintenancePolicy"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "project_id,zone,cluster_id,maintenance_policy";
+ option (google.api.method_signature) = "name,maintenance_policy";
+ }
+
+ // Lists subnetworks that are usable for creating clusters in a project.
+ rpc ListUsableSubnetworks(ListUsableSubnetworksRequest) returns (ListUsableSubnetworksResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=projects/*}/aggregated/usableSubnetworks"
+ };
+ }
+}
+
+// Parameters that can be configured on Linux nodes.
+message LinuxNodeConfig {
+ // Possible cgroup modes that can be used.
+ enum CgroupMode {
+ // CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used.
+ // The default for the GKE node OS image will be used.
+ CGROUP_MODE_UNSPECIFIED = 0;
+
+ // CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on
+ // the node image.
+ CGROUP_MODE_V1 = 1;
+
+ // CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on
+ // the node image.
+ CGROUP_MODE_V2 = 2;
+ }
+
+ // The Linux kernel parameters to be applied to the nodes and all pods running
+ // on the nodes.
+ //
+ // The following parameters are supported.
+ //
+ // net.core.busy_poll
+ // net.core.busy_read
+ // net.core.netdev_max_backlog
+ // net.core.rmem_max
+ // net.core.wmem_default
+ // net.core.wmem_max
+ // net.core.optmem_max
+ // net.core.somaxconn
+ // net.ipv4.tcp_rmem
+ // net.ipv4.tcp_wmem
+ // net.ipv4.tcp_tw_reuse
+ map sysctls = 1;
+
+ // cgroup_mode specifies the cgroup mode to be used on the node.
+ CgroupMode cgroup_mode = 2;
+}
+
+// Node kubelet configs.
+message NodeKubeletConfig {
+ // Control the CPU management policy on the node.
+ // See
+ // https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/
+ //
+ // The following values are allowed.
+ // * "none": the default, which represents the existing scheduling behavior.
+ // * "static": allows pods with certain resource characteristics to be granted
+ // increased CPU affinity and exclusivity on the node.
+ // The default value is 'none' if unspecified.
+ string cpu_manager_policy = 1;
+
+ // Enable CPU CFS quota enforcement for containers that specify CPU limits.
+ //
+ // This option is enabled by default which makes kubelet use CFS quota
+ // (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to
+ // enforce container CPU limits. Otherwise, CPU limits will not be enforced at
+ // all.
+ //
+ // Disable this option to mitigate CPU throttling problems while still having
+ // your pods to be in Guaranteed QoS class by specifying the CPU limits.
+ //
+ // The default value is 'true' if unspecified.
+ google.protobuf.BoolValue cpu_cfs_quota = 2;
+
+ // Set the CPU CFS quota period value 'cpu.cfs_period_us'.
+ //
+ // The string must be a sequence of decimal numbers, each with optional
+ // fraction and a unit suffix, such as "300ms".
+ // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
+ // The value must be a positive duration.
+ string cpu_cfs_quota_period = 3;
+
+ // Set the Pod PID limits. See
+ // https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits
+ //
+ // Controls the maximum number of processes allowed to run in a pod. The value
+ // must be greater than or equal to 1024 and less than 4194304.
+ int64 pod_pids_limit = 4;
+}
+
+// Parameters that describe the nodes in a cluster.
+//
+// GKE Autopilot clusters do not
+// recognize parameters in `NodeConfig`. Use
+// [AutoprovisioningNodePoolDefaults][google.container.v1.AutoprovisioningNodePoolDefaults]
+// instead.
+message NodeConfig {
+ // The name of a Google Compute Engine [machine
+ // type](https://cloud.google.com/compute/docs/machine-types)
+ //
+ // If unspecified, the default machine type is `e2-medium`.
+ string machine_type = 1;
+
+ // Size of the disk attached to each node, specified in GB.
+ // The smallest allowed disk size is 10GB.
+ //
+ // If unspecified, the default disk size is 100GB.
+ int32 disk_size_gb = 2;
+
+ // The set of Google API scopes to be made available on all of the
+ // node VMs under the "default" service account.
+ //
+ // The following scopes are recommended, but not required, and by default are
+ // not included:
+ //
+ // * `https://www.googleapis.com/auth/compute` is required for mounting
+ // persistent storage on your nodes.
+ // * `https://www.googleapis.com/auth/devstorage.read_only` is required for
+ // communicating with **gcr.io**
+ // (the [Google Container
+ // Registry](https://cloud.google.com/container-registry/)).
+ //
+ // If unspecified, no scopes are added, unless Cloud Logging or Cloud
+ // Monitoring are enabled, in which case their required scopes will be added.
+ repeated string oauth_scopes = 3;
+
+ // The Google Cloud Platform Service Account to be used by the node VMs.
+ // Specify the email address of the Service Account; otherwise, if no Service
+ // Account is specified, the "default" service account is used.
+ string service_account = 9;
+
+ // The metadata key/value pairs assigned to instances in the cluster.
+ //
+ // Keys must conform to the regexp `[a-zA-Z0-9-_]+` and be less than 128 bytes
+ // in length. These are reflected as part of a URL in the metadata server.
+ // Additionally, to avoid ambiguity, keys must not conflict with any other
+ // metadata keys for the project or be one of the reserved keys:
+ //
+ // - "cluster-location"
+ // - "cluster-name"
+ // - "cluster-uid"
+ // - "configure-sh"
+ // - "containerd-configure-sh"
+ // - "enable-os-login"
+ // - "gci-ensure-gke-docker"
+ // - "gci-metrics-enabled"
+ // - "gci-update-strategy"
+ // - "instance-template"
+ // - "kube-env"
+ // - "startup-script"
+ // - "user-data"
+ // - "disable-address-manager"
+ // - "windows-startup-script-ps1"
+ // - "common-psm1"
+ // - "k8s-node-setup-psm1"
+ // - "install-ssh-psm1"
+ // - "user-profile-psm1"
+ //
+ // Values are free-form strings, and only have meaning as interpreted by
+ // the image running in the instance. The only restriction placed on them is
+ // that each value's size must be less than or equal to 32 KB.
+ //
+ // The total size of all keys and values must be less than 512 KB.
+ map metadata = 4;
+
+ // The image type to use for this node. Note that for a given image type,
+ // the latest version of it will be used.
+ string image_type = 5;
+
+ // The map of Kubernetes labels (key/value pairs) to be applied to each node.
+ // These will added in addition to any default label(s) that
+ // Kubernetes may apply to the node.
+ // In case of conflict in label keys, the applied set may differ depending on
+ // the Kubernetes version -- it's best to assume the behavior is undefined
+ // and conflicts should be avoided.
+ // For more information, including usage and the valid values, see:
+ // https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
+ map labels = 6;
+
+ // The number of local SSD disks to be attached to the node.
+ //
+ // The limit for this value is dependent upon the maximum number of
+ // disks available on a machine per zone. See:
+ // https://cloud.google.com/compute/docs/disks/local-ssd
+ // for more information.
+ int32 local_ssd_count = 7;
+
+ // The list of instance tags applied to all nodes. Tags are used to identify
+ // valid sources or targets for network firewalls and are specified by
+ // the client during cluster or node pool creation. Each tag within the list
+ // must comply with RFC1035.
+ repeated string tags = 8;
+
+ // Whether the nodes are created as preemptible VM instances. See:
+ // https://cloud.google.com/compute/docs/instances/preemptible for more
+ // information about preemptible VM instances.
+ bool preemptible = 10;
+
+ // A list of hardware accelerators to be attached to each node.
+ // See https://cloud.google.com/compute/docs/gpus for more information about
+ // support for GPUs.
+ repeated AcceleratorConfig accelerators = 11;
+
+ // Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or
+ // 'pd-balanced')
+ //
+ // If unspecified, the default disk type is 'pd-standard'
+ string disk_type = 12;
+
+ // Minimum CPU platform to be used by this instance. The instance may be
+ // scheduled on the specified or newer CPU platform. Applicable values are the
+ // friendly names of CPU platforms, such as
+ // `minCpuPlatform: "Intel Haswell"` or
+ // `minCpuPlatform: "Intel Sandy Bridge"`. For more
+ // information, read [how to specify min CPU
+ // platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ string min_cpu_platform = 13;
+
+ // The workload metadata configuration for this node.
+ WorkloadMetadataConfig workload_metadata_config = 14;
+
+ // List of kubernetes taints to be applied to each node.
+ //
+ // For more information, including usage and the valid values, see:
+ // https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+ repeated NodeTaint taints = 15;
+
+ // Sandbox configuration for this node.
+ SandboxConfig sandbox_config = 17;
+
+ // Setting this field will assign instances of this
+ // pool to run on the specified node group. This is useful for running
+ // workloads on [sole tenant
+ // nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
+ string node_group = 18;
+
+ // The optional reservation affinity. Setting this field will apply
+ // the specified [Zonal Compute
+ // Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+ // to this node pool.
+ ReservationAffinity reservation_affinity = 19;
+
+ // Shielded Instance options.
+ ShieldedInstanceConfig shielded_instance_config = 20;
+
+ // Parameters that can be configured on Linux nodes.
+ LinuxNodeConfig linux_node_config = 21;
+
+ // Node kubelet configs.
+ NodeKubeletConfig kubelet_config = 22;
+
+ //
+ // The Customer Managed Encryption Key used to encrypt the boot disk attached
+ // to each node in the node pool. This should be of the form
+ // projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ // For more information about protecting resources with Cloud KMS Keys please
+ // see:
+ // https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ string boot_disk_kms_key = 23;
+
+ // Google Container File System (image streaming) configs.
+ GcfsConfig gcfs_config = 25;
+
+ // Advanced features for the Compute Engine VM.
+ AdvancedMachineFeatures advanced_machine_features = 26;
+
+ // Enable or disable gvnic in the node pool.
+ VirtualNIC gvnic = 29;
+
+ // Spot flag for enabling Spot VM, which is a rebrand of
+ // the existing preemptible flag.
+ bool spot = 32;
+
+ // Confidential nodes config.
+ // All the nodes in the node pool will be Confidential VM once enabled.
+ ConfidentialNodes confidential_nodes = 35;
+
+ // The resource labels for the node pool to use to annotate any related
+ // Google Compute Engine resources.
+ map resource_labels = 37;
+
+ // Logging configuration.
+ NodePoolLoggingConfig logging_config = 38;
+}
+
+// Specifies options for controlling advanced machine features.
+message AdvancedMachineFeatures {
+ // The number of threads per physical core. To disable simultaneous
+ // multithreading (SMT) set this to 1. If unset, the maximum number of threads
+ // supported per core by the underlying processor is assumed.
+ optional int64 threads_per_core = 1;
+}
+
+// Parameters for node pool-level network config.
+message NodeNetworkConfig {
+ // Configuration of all network bandwidth tiers
+ message NetworkPerformanceConfig {
+ // Node network tier
+ enum Tier {
+ // Default value
+ TIER_UNSPECIFIED = 0;
+
+ // Higher bandwidth, actual values based on VM size.
+ TIER_1 = 1;
+ }
+
+ // Specifies the total network bandwidth tier for the NodePool.
+ optional Tier total_egress_bandwidth_tier = 1;
+ }
+
+ // Input only. Whether to create a new range for pod IPs in this node pool.
+ // Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they
+ // are not specified.
+ //
+ // If neither `create_pod_range` or `pod_range` are specified, the
+ // cluster-level default (`ip_allocation_policy.cluster_ipv4_cidr_block`) is
+ // used.
+ //
+ // Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
+ //
+ // This field cannot be changed after the node pool has been created.
+ bool create_pod_range = 4 [(google.api.field_behavior) = INPUT_ONLY];
+
+ // The ID of the secondary range for pod IPs.
+ // If `create_pod_range` is true, this ID is used for the new range.
+ // If `create_pod_range` is false, uses an existing secondary range with this
+ // ID.
+ //
+ // Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
+ //
+ // This field cannot be changed after the node pool has been created.
+ string pod_range = 5;
+
+ // The IP address range for pod IPs in this node pool.
+ //
+ // Only applicable if `create_pod_range` is true.
+ //
+ // Set to blank to have a range chosen with the default size.
+ //
+ // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ // netmask.
+ //
+ // Set to a
+ // [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `10.96.0.0/14`) to pick a specific range to use.
+ //
+ // Only applicable if `ip_allocation_policy.use_ip_aliases` is true.
+ //
+ // This field cannot be changed after the node pool has been created.
+ string pod_ipv4_cidr_block = 6;
+
+ // Whether nodes have internal IP addresses only.
+ // If enable_private_nodes is not specified, then the value is derived from
+ // [cluster.privateClusterConfig.enablePrivateNodes][google.container.v1beta1.PrivateClusterConfig.enablePrivateNodes]
+ optional bool enable_private_nodes = 9;
+
+ // Network bandwidth tier configuration.
+ optional NetworkPerformanceConfig network_performance_config = 11;
+}
+
+// A set of Shielded Instance options.
+message ShieldedInstanceConfig {
+ // Defines whether the instance has Secure Boot enabled.
+ //
+ // Secure Boot helps ensure that the system only runs authentic software by
+ // verifying the digital signature of all boot components, and halting the
+ // boot process if signature verification fails.
+ bool enable_secure_boot = 1;
+
+ // Defines whether the instance has integrity monitoring enabled.
+ //
+ // Enables monitoring and attestation of the boot integrity of the instance.
+ // The attestation is performed against the integrity policy baseline. This
+ // baseline is initially derived from the implicitly trusted boot image when
+ // the instance is created.
+ bool enable_integrity_monitoring = 2;
+}
+
+// SandboxConfig contains configurations of the sandbox to use for the node.
+message SandboxConfig {
+ // Possible types of sandboxes.
+ enum Type {
+ // Default value. This should not be used.
+ UNSPECIFIED = 0;
+
+ // Run sandbox using gvisor.
+ GVISOR = 1;
+ }
+
+ // Type of the sandbox to use for the node.
+ Type type = 2;
+}
+
+// GcfsConfig contains configurations of Google Container File System
+// (image streaming).
+message GcfsConfig {
+ // Whether to use GCFS.
+ bool enabled = 1;
+}
+
+// [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+// is the configuration of desired reservation which instances could take
+// capacity from.
+message ReservationAffinity {
+ // Indicates whether to consume capacity from a reservation or not.
+ enum Type {
+ // Default value. This should not be used.
+ UNSPECIFIED = 0;
+
+ // Do not consume from any reserved capacity.
+ NO_RESERVATION = 1;
+
+ // Consume any reservation available.
+ ANY_RESERVATION = 2;
+
+ // Must consume from a specific reservation. Must specify key value fields
+ // for specifying the reservations.
+ SPECIFIC_RESERVATION = 3;
+ }
+
+ // Corresponds to the type of reservation consumption.
+ Type consume_reservation_type = 1;
+
+ // Corresponds to the label key of a reservation resource. To target a
+ // SPECIFIC_RESERVATION by name, specify
+ // "compute.googleapis.com/reservation-name" as the key and specify the name
+ // of your reservation as its value.
+ string key = 2;
+
+ // Corresponds to the label value(s) of reservation resource(s).
+ repeated string values = 3;
+}
+
+// Kubernetes taint is comprised of three fields: key, value, and effect. Effect
+// can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
+//
+// See
+// [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
+// for more information, including usage and the valid values.
+message NodeTaint {
+ // Possible values for Effect in taint.
+ enum Effect {
+ // Not set
+ EFFECT_UNSPECIFIED = 0;
+
+ // NoSchedule
+ NO_SCHEDULE = 1;
+
+ // PreferNoSchedule
+ PREFER_NO_SCHEDULE = 2;
+
+ // NoExecute
+ NO_EXECUTE = 3;
+ }
+
+ // Key for taint.
+ string key = 1;
+
+ // Value for taint.
+ string value = 2;
+
+ // Effect for taint.
+ Effect effect = 3;
+}
+
+// Collection of Kubernetes [node
+// taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration).
+message NodeTaints {
+ // List of node taints.
+ repeated NodeTaint taints = 1;
+}
+
+// Collection of node-level [Kubernetes
+// labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels).
+message NodeLabels {
+ // Map of node label keys and node label values.
+ map labels = 1;
+}
+
+// Collection of [GCP
+// labels](https://cloud.google.com/resource-manager/docs/creating-managing-labels).
+message ResourceLabels {
+ // Map of node label keys and node label values.
+ map labels = 1;
+}
+
+// Collection of Compute Engine network tags that can be applied to a node's
+// underlying VM instance.
+message NetworkTags {
+ // List of network tags.
+ repeated string tags = 1;
+}
+
+// The authentication information for accessing the master endpoint.
+// Authentication can be done using HTTP basic auth or using client
+// certificates.
+message MasterAuth {
+ // The username to use for HTTP basic authentication to the master endpoint.
+ // For clusters v1.6.0 and later, basic authentication can be disabled by
+ // leaving username unspecified (or setting it to the empty string).
+ //
+ // Warning: basic authentication is deprecated, and will be removed in GKE
+ // control plane versions 1.19 and newer. For a list of recommended
+ // authentication methods, see:
+ // https://cloud.google.com/kubernetes-engine/docs/how-to/api-server-authentication
+ string username = 1 [deprecated = true];
+
+ // The password to use for HTTP basic authentication to the master endpoint.
+ // Because the master endpoint is open to the Internet, you should create a
+ // strong password. If a password is provided for cluster creation, username
+ // must be non-empty.
+ //
+ // Warning: basic authentication is deprecated, and will be removed in GKE
+ // control plane versions 1.19 and newer. For a list of recommended
+ // authentication methods, see:
+ // https://cloud.google.com/kubernetes-engine/docs/how-to/api-server-authentication
+ string password = 2 [deprecated = true];
+
+ // Configuration for client certificate authentication on the cluster. For
+ // clusters before v1.12, if no configuration is specified, a client
+ // certificate is issued.
+ ClientCertificateConfig client_certificate_config = 3;
+
+ // [Output only] Base64-encoded public certificate that is the root of
+ // trust for the cluster.
+ string cluster_ca_certificate = 100;
+
+ // [Output only] Base64-encoded public certificate used by clients to
+ // authenticate to the cluster endpoint.
+ string client_certificate = 101;
+
+ // [Output only] Base64-encoded private key used by clients to authenticate
+ // to the cluster endpoint.
+ string client_key = 102;
+}
+
+// Configuration for client certificates on the cluster.
+message ClientCertificateConfig {
+ // Issue a client certificate.
+ bool issue_client_certificate = 1;
+}
+
+// Configuration for the addons that can be automatically spun up in the
+// cluster, enabling additional functionality.
+message AddonsConfig {
+ // Configuration for the HTTP (L7) load balancing controller addon, which
+ // makes it easy to set up HTTP load balancers for services in a cluster.
+ HttpLoadBalancing http_load_balancing = 1;
+
+ // Configuration for the horizontal pod autoscaling feature, which
+ // increases or decreases the number of replica pods a replication controller
+ // has based on the resource usage of the existing pods.
+ HorizontalPodAutoscaling horizontal_pod_autoscaling = 2;
+
+ // Configuration for the Kubernetes Dashboard.
+ // This addon is deprecated, and will be disabled in 1.15. It is recommended
+ // to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ // workloads and applications. For more information, see:
+ // https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ KubernetesDashboard kubernetes_dashboard = 3 [deprecated = true];
+
+ // Configuration for NetworkPolicy. This only tracks whether the addon
+ // is enabled or not on the Master, it does not track whether network policy
+ // is enabled for the nodes.
+ NetworkPolicyConfig network_policy_config = 4;
+
+ // Configuration for the Cloud Run addon, which allows the user to use a
+ // managed Knative service.
+ CloudRunConfig cloud_run_config = 7;
+
+ // Configuration for NodeLocalDNS, a dns cache running on cluster nodes
+ DnsCacheConfig dns_cache_config = 8;
+
+ // Configuration for the ConfigConnector add-on, a Kubernetes
+ // extension to manage hosted GCP services through the Kubernetes API
+ ConfigConnectorConfig config_connector_config = 10;
+
+ // Configuration for the Compute Engine Persistent Disk CSI driver.
+ GcePersistentDiskCsiDriverConfig gce_persistent_disk_csi_driver_config = 11;
+
+ // Configuration for the GCP Filestore CSI driver.
+ GcpFilestoreCsiDriverConfig gcp_filestore_csi_driver_config = 14;
+
+ // Configuration for the Backup for GKE agent addon.
+ GkeBackupAgentConfig gke_backup_agent_config = 16;
+}
+
+// Configuration options for the HTTP (L7) load balancing controller addon,
+// which makes it easy to set up HTTP load balancers for services in a cluster.
+message HttpLoadBalancing {
+ // Whether the HTTP Load Balancing controller is enabled in the cluster.
+ // When enabled, it runs a small pod in the cluster that manages the load
+ // balancers.
+ bool disabled = 1;
+}
+
+// Configuration options for the horizontal pod autoscaling feature, which
+// increases or decreases the number of replica pods a replication controller
+// has based on the resource usage of the existing pods.
+message HorizontalPodAutoscaling {
+ // Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
+ // When enabled, it ensures that metrics are collected into Stackdriver
+ // Monitoring.
+ bool disabled = 1;
+}
+
+// Configuration for the Kubernetes Dashboard.
+message KubernetesDashboard {
+ // Whether the Kubernetes Dashboard is enabled for this cluster.
+ bool disabled = 1;
+}
+
+// Configuration for NetworkPolicy. This only tracks whether the addon
+// is enabled or not on the Master, it does not track whether network policy
+// is enabled for the nodes.
+message NetworkPolicyConfig {
+ // Whether NetworkPolicy is enabled for this cluster.
+ bool disabled = 1;
+}
+
+// Configuration for NodeLocal DNSCache
+message DnsCacheConfig {
+ // Whether NodeLocal DNSCache is enabled for this cluster.
+ bool enabled = 1;
+}
+
+// Configuration for controlling master global access settings.
+message PrivateClusterMasterGlobalAccessConfig {
+ // Whenever master is accessible globally or not.
+ bool enabled = 1;
+}
+
+// Configuration options for private clusters.
+message PrivateClusterConfig {
+ // Whether nodes have internal IP addresses only. If enabled, all nodes are
+ // given only RFC 1918 private addresses and communicate with the master via
+ // private networking.
+ bool enable_private_nodes = 1;
+
+ // Whether the master's internal IP address is used as the cluster endpoint.
+ bool enable_private_endpoint = 2;
+
+ // The IP range in CIDR notation to use for the hosted master network. This
+ // range will be used for assigning internal IP addresses to the master or
+ // set of masters, as well as the ILB VIP. This range must not overlap with
+ // any other ranges in use within the cluster's network.
+ string master_ipv4_cidr_block = 3;
+
+ // Output only. The internal IP address of this cluster's master endpoint.
+ string private_endpoint = 4;
+
+ // Output only. The external IP address of this cluster's master endpoint.
+ string public_endpoint = 5;
+
+ // Output only. The peering name in the customer VPC used by this cluster.
+ string peering_name = 7;
+
+ // Controls master global access settings.
+ PrivateClusterMasterGlobalAccessConfig master_global_access_config = 8;
+
+ // Subnet to provision the master's private endpoint during cluster creation.
+ // Specified in projects/*/regions/*/subnetworks/* format.
+ string private_endpoint_subnetwork = 10;
+}
+
+// Configuration for returning group information from authenticators.
+message AuthenticatorGroupsConfig {
+ // Whether this cluster should return group membership lookups
+ // during authentication using a group of security groups.
+ bool enabled = 1;
+
+ // The name of the security group-of-groups to be used. Only relevant
+ // if enabled = true.
+ string security_group = 2;
+}
+
+// Configuration options for the Cloud Run feature.
+message CloudRunConfig {
+ // Load balancer type of ingress service of Cloud Run.
+ enum LoadBalancerType {
+ // Load balancer type for Cloud Run is unspecified.
+ LOAD_BALANCER_TYPE_UNSPECIFIED = 0;
+
+ // Install external load balancer for Cloud Run.
+ LOAD_BALANCER_TYPE_EXTERNAL = 1;
+
+ // Install internal load balancer for Cloud Run.
+ LOAD_BALANCER_TYPE_INTERNAL = 2;
+ }
+
+ // Whether Cloud Run addon is enabled for this cluster.
+ bool disabled = 1;
+
+ // Which load balancer type is installed for Cloud Run.
+ LoadBalancerType load_balancer_type = 3;
+}
+
+// Configuration options for the Config Connector add-on.
+message ConfigConnectorConfig {
+ // Whether Cloud Connector is enabled for this cluster.
+ bool enabled = 1;
+}
+
+// Configuration for the Compute Engine PD CSI driver.
+message GcePersistentDiskCsiDriverConfig {
+ // Whether the Compute Engine PD CSI driver is enabled for this cluster.
+ bool enabled = 1;
+}
+
+// Configuration for the GCP Filestore CSI driver.
+message GcpFilestoreCsiDriverConfig {
+ // Whether the GCP Filestore CSI driver is enabled for this cluster.
+ bool enabled = 1;
+}
+
+// Configuration for the Backup for GKE Agent.
+message GkeBackupAgentConfig {
+ // Whether the Backup for GKE agent is enabled for this cluster.
+ bool enabled = 1;
+}
+
+// Configuration options for the master authorized networks feature. Enabled
+// master authorized networks will disallow all external traffic to access
+// Kubernetes master through HTTPS except traffic from the given CIDR blocks,
+// Google Compute Engine Public IPs and Google Prod IPs.
+message MasterAuthorizedNetworksConfig {
+ // CidrBlock contains an optional name and one CIDR block.
+ message CidrBlock {
+ // display_name is an optional field for users to identify CIDR blocks.
+ string display_name = 1;
+
+ // cidr_block must be specified in CIDR notation.
+ string cidr_block = 2;
+ }
+
+ // Whether or not master authorized networks is enabled.
+ bool enabled = 1;
+
+ // cidr_blocks define up to 50 external networks that could access
+ // Kubernetes master through HTTPS.
+ repeated CidrBlock cidr_blocks = 2;
+
+ // Whether master is accessbile via Google Compute Engine Public IP addresses.
+ optional bool gcp_public_cidrs_access_enabled = 3;
+}
+
+// Configuration for the legacy Attribute Based Access Control authorization
+// mode.
+message LegacyAbac {
+ // Whether the ABAC authorizer is enabled for this cluster. When enabled,
+ // identities in the system, including service accounts, nodes, and
+ // controllers, will have statically granted permissions beyond those
+ // provided by the RBAC configuration or IAM.
+ bool enabled = 1;
+}
+
+// Configuration options for the NetworkPolicy feature.
+// https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
+message NetworkPolicy {
+ // Allowed Network Policy providers.
+ enum Provider {
+ // Not set
+ PROVIDER_UNSPECIFIED = 0;
+
+ // Tigera (Calico Felix).
+ CALICO = 1;
+ }
+
+ // The selected network policy provider.
+ Provider provider = 1;
+
+ // Whether network policy is enabled on the cluster.
+ bool enabled = 2;
+}
+
+// Configuration for Binary Authorization.
+message BinaryAuthorization {
+ // Binary Authorization mode of operation.
+ enum EvaluationMode {
+ // Default value
+ EVALUATION_MODE_UNSPECIFIED = 0;
+
+ // Disable BinaryAuthorization
+ DISABLED = 1;
+
+ // Enforce Kubernetes admission requests with BinaryAuthorization using the
+ // project's singleton policy. This is equivalent to setting the
+ // enabled boolean to true.
+ PROJECT_SINGLETON_POLICY_ENFORCE = 2;
+ }
+
+ // This field is deprecated. Leave this unset and instead configure
+ // BinaryAuthorization using evaluation_mode. If evaluation_mode is set to
+ // anything other than EVALUATION_MODE_UNSPECIFIED, this field is ignored.
+ bool enabled = 1 [deprecated = true];
+
+ // Mode of operation for binauthz policy evaluation. Currently the only
+ // options are equivalent to enable/disable. If unspecified, defaults to
+ // DISABLED.
+ EvaluationMode evaluation_mode = 2;
+}
+
+// Configuration for controlling how IPs are allocated in the cluster.
+message IPAllocationPolicy {
+ // Whether alias IPs will be used for pod IPs in the cluster.
+ // This is used in conjunction with use_routes. It cannot
+ // be true if use_routes is true. If both use_ip_aliases and use_routes are
+ // false, then the server picks the default IP allocation mode
+ bool use_ip_aliases = 1;
+
+ // Whether a new subnetwork will be created automatically for the cluster.
+ //
+ // This field is only applicable when `use_ip_aliases` is true.
+ bool create_subnetwork = 2;
+
+ // A custom subnetwork name to be used if `create_subnetwork` is true. If
+ // this field is empty, then an automatic name will be chosen for the new
+ // subnetwork.
+ string subnetwork_name = 3;
+
+ // This field is deprecated, use cluster_ipv4_cidr_block.
+ string cluster_ipv4_cidr = 4 [deprecated = true];
+
+ // This field is deprecated, use node_ipv4_cidr_block.
+ string node_ipv4_cidr = 5 [deprecated = true];
+
+ // This field is deprecated, use services_ipv4_cidr_block.
+ string services_ipv4_cidr = 6 [deprecated = true];
+
+ // The name of the secondary range to be used for the cluster CIDR
+ // block. The secondary range will be used for pod IP
+ // addresses. This must be an existing secondary range associated
+ // with the cluster subnetwork.
+ //
+ // This field is only applicable with use_ip_aliases is true and
+ // create_subnetwork is false.
+ string cluster_secondary_range_name = 7;
+
+ // The name of the secondary range to be used as for the services
+ // CIDR block. The secondary range will be used for service
+ // ClusterIPs. This must be an existing secondary range associated
+ // with the cluster subnetwork.
+ //
+ // This field is only applicable with use_ip_aliases is true and
+ // create_subnetwork is false.
+ string services_secondary_range_name = 8;
+
+ // The IP address range for the cluster pod IPs. If this field is set, then
+ // `cluster.cluster_ipv4_cidr` must be left blank.
+ //
+ // This field is only applicable when `use_ip_aliases` is true.
+ //
+ // Set to blank to have a range chosen with the default size.
+ //
+ // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ // netmask.
+ //
+ // Set to a
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ // to use.
+ string cluster_ipv4_cidr_block = 9;
+
+ // The IP address range of the instance IPs in this cluster.
+ //
+ // This is applicable only if `create_subnetwork` is true.
+ //
+ // Set to blank to have a range chosen with the default size.
+ //
+ // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ // netmask.
+ //
+ // Set to a
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ // to use.
+ string node_ipv4_cidr_block = 10;
+
+ // The IP address range of the services IPs in this cluster. If blank, a range
+ // will be automatically chosen with the default size.
+ //
+ // This field is only applicable when `use_ip_aliases` is true.
+ //
+ // Set to blank to have a range chosen with the default size.
+ //
+ // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ // netmask.
+ //
+ // Set to a
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ // to use.
+ string services_ipv4_cidr_block = 11;
+
+ // The IP address range of the Cloud TPUs in this cluster. If unspecified, a
+ // range will be automatically chosen with the default size.
+ //
+ // This field is only applicable when `use_ip_aliases` is true.
+ //
+ // If unspecified, the range will use the default size.
+ //
+ // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
+ // netmask.
+ //
+ // Set to a
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
+ // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
+ // to use.
+ string tpu_ipv4_cidr_block = 13;
+
+ // Whether routes will be used for pod IPs in the cluster.
+ // This is used in conjunction with use_ip_aliases. It cannot be true if
+ // use_ip_aliases is true. If both use_ip_aliases and use_routes are false,
+ // then the server picks the default IP allocation mode
+ bool use_routes = 15;
+
+ // The IP stack type of the cluster
+ StackType stack_type = 16;
+
+ // The ipv6 access type (internal or external) when create_subnetwork is true
+ IPv6AccessType ipv6_access_type = 17;
+}
+
+// A Google Kubernetes Engine cluster.
+message Cluster {
+ // The current status of the cluster.
+ enum Status {
+ // Not set.
+ STATUS_UNSPECIFIED = 0;
+
+ // The PROVISIONING state indicates the cluster is being created.
+ PROVISIONING = 1;
+
+ // The RUNNING state indicates the cluster has been created and is fully
+ // usable.
+ RUNNING = 2;
+
+ // The RECONCILING state indicates that some work is actively being done on
+ // the cluster, such as upgrading the master or node software. Details can
+ // be found in the `statusMessage` field.
+ RECONCILING = 3;
+
+ // The STOPPING state indicates the cluster is being deleted.
+ STOPPING = 4;
+
+ // The ERROR state indicates the cluster is unusable. It will be
+ // automatically deleted. Details can be found in the `statusMessage` field.
+ ERROR = 5;
+
+ // The DEGRADED state indicates the cluster requires user action to restore
+ // full functionality. Details can be found in the `statusMessage` field.
+ DEGRADED = 6;
+ }
+
+ // The name of this cluster. The name must be unique within this project
+ // and location (e.g. zone or region), and can be up to 40 characters with
+ // the following restrictions:
+ //
+ // * Lowercase letters, numbers, and hyphens only.
+ // * Must start with a letter.
+ // * Must end with a number or a letter.
+ string name = 1;
+
+ // An optional description of this cluster.
+ string description = 2;
+
+ // The number of nodes to create in this cluster. You must ensure that your
+ // Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ // is sufficient for this number of instances. You must also have available
+ // firewall and routes quota.
+ // For requests, this field should only be used in lieu of a
+ // "node_pool" object, since this configuration (along with the
+ // "node_config") will be used to create a "NodePool" object with an
+ // auto-generated name. Do not use this and a node_pool at the same time.
+ //
+ // This field is deprecated, use node_pool.initial_node_count instead.
+ int32 initial_node_count = 3 [deprecated = true];
+
+ // Parameters used in creating the cluster's nodes.
+ // For requests, this field should only be used in lieu of a
+ // "node_pool" object, since this configuration (along with the
+ // "initial_node_count") will be used to create a "NodePool" object with an
+ // auto-generated name. Do not use this and a node_pool at the same time.
+ // For responses, this field will be populated with the node configuration of
+ // the first node pool. (For configuration of each node pool, see
+ // `node_pool.config`)
+ //
+ // If unspecified, the defaults are used.
+ // This field is deprecated, use node_pool.config instead.
+ NodeConfig node_config = 4 [deprecated = true];
+
+ // The authentication information for accessing the master endpoint.
+ // If unspecified, the defaults are used:
+ // For clusters before v1.12, if master_auth is unspecified, `username` will
+ // be set to "admin", a random password will be generated, and a client
+ // certificate will be issued.
+ MasterAuth master_auth = 5;
+
+ // The logging service the cluster should use to write logs.
+ // Currently available options:
+ //
+ // * `logging.googleapis.com/kubernetes` - The Cloud Logging
+ // service with a Kubernetes-native resource model
+ // * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
+ // available as of GKE 1.15).
+ // * `none` - no logs will be exported from the cluster.
+ //
+ // If left as an empty string,`logging.googleapis.com/kubernetes` will be
+ // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
+ string logging_service = 6;
+
+ // The monitoring service the cluster should use to write metrics.
+ // Currently available options:
+ //
+ // * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
+ // service with a Kubernetes-native resource model
+ // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
+ // longer available as of GKE 1.15).
+ // * `none` - No metrics will be exported from the cluster.
+ //
+ // If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
+ // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
+ string monitoring_service = 7;
+
+ // The name of the Google Compute Engine
+ // [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ // to which the cluster is connected. If left unspecified, the `default`
+ // network will be used.
+ string network = 8;
+
+ // The IP address range of the container pods in this cluster, in
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `10.96.0.0/14`). Leave blank to have
+ // one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
+ string cluster_ipv4_cidr = 9;
+
+ // Configurations for the various addons available to run in the cluster.
+ AddonsConfig addons_config = 10;
+
+ // The name of the Google Compute Engine
+ // [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
+ // the cluster is connected.
+ string subnetwork = 11;
+
+ // The node pools associated with this cluster.
+ // This field should not be set if "node_config" or "initial_node_count" are
+ // specified.
+ repeated NodePool node_pools = 12;
+
+ // The list of Google Compute Engine
+ // [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster's nodes should be located.
+ //
+ // This field provides a default value if
+ // [NodePool.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.FIELDS.locations)
+ // are not specified during node pool creation.
+ //
+ // Warning: changing cluster locations will update the
+ // [NodePool.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.FIELDS.locations)
+ // of all node pools and will result in nodes being added and/or removed.
+ repeated string locations = 13;
+
+ // Kubernetes alpha features are enabled on this cluster. This includes alpha
+ // API groups (e.g. v1alpha1) and features that may not be production ready in
+ // the kubernetes version of the master and nodes.
+ // The cluster has no SLA for uptime and master/node upgrades are disabled.
+ // Alpha enabled clusters are automatically deleted thirty days after
+ // creation.
+ bool enable_kubernetes_alpha = 14;
+
+ // The resource labels for the cluster to use to annotate any related
+ // Google Compute Engine resources.
+ map resource_labels = 15;
+
+ // The fingerprint of the set of labels for this cluster.
+ string label_fingerprint = 16;
+
+ // Configuration for the legacy ABAC authorization mode.
+ LegacyAbac legacy_abac = 18;
+
+ // Configuration options for the NetworkPolicy feature.
+ NetworkPolicy network_policy = 19;
+
+ // Configuration for cluster IP allocation.
+ IPAllocationPolicy ip_allocation_policy = 20;
+
+ // The configuration options for master authorized networks feature.
+ MasterAuthorizedNetworksConfig master_authorized_networks_config = 22;
+
+ // Configure the maintenance policy for this cluster.
+ MaintenancePolicy maintenance_policy = 23;
+
+ // Configuration for Binary Authorization.
+ BinaryAuthorization binary_authorization = 24;
+
+ // Cluster-level autoscaling configuration.
+ ClusterAutoscaling autoscaling = 26;
+
+ // Configuration for cluster networking.
+ NetworkConfig network_config = 27;
+
+ // The default constraint on the maximum number of pods that can be run
+ // simultaneously on a node in the node pool of this cluster. Only honored
+ // if cluster created with IP Alias support.
+ MaxPodsConstraint default_max_pods_constraint = 30;
+
+ // Configuration for exporting resource usages. Resource usage export is
+ // disabled when this config is unspecified.
+ ResourceUsageExportConfig resource_usage_export_config = 33;
+
+ // Configuration controlling RBAC group membership information.
+ AuthenticatorGroupsConfig authenticator_groups_config = 34;
+
+ // Configuration for private cluster.
+ PrivateClusterConfig private_cluster_config = 37;
+
+ // Configuration of etcd encryption.
+ DatabaseEncryption database_encryption = 38;
+
+ // Cluster-level Vertical Pod Autoscaling configuration.
+ VerticalPodAutoscaling vertical_pod_autoscaling = 39;
+
+ // Shielded Nodes configuration.
+ ShieldedNodes shielded_nodes = 40;
+
+ // Release channel configuration.
+ ReleaseChannel release_channel = 41;
+
+ // Configuration for the use of Kubernetes Service Accounts in GCP IAM
+ // policies.
+ WorkloadIdentityConfig workload_identity_config = 43;
+
+ // Configuration for issuance of mTLS keys and certificates to Kubernetes
+ // pods.
+ MeshCertificates mesh_certificates = 67;
+
+ // Configuration for the fine-grained cost management feature.
+ CostManagementConfig cost_management_config = 45;
+
+ // Notification configuration of the cluster.
+ NotificationConfig notification_config = 49;
+
+ // Configuration of Confidential Nodes.
+ // All the nodes in the cluster will be Confidential VM once enabled.
+ ConfidentialNodes confidential_nodes = 50;
+
+ // Configuration for Identity Service component.
+ IdentityServiceConfig identity_service_config = 54;
+
+ // [Output only] Server-defined URL for the resource.
+ string self_link = 100;
+
+ // [Output only] The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field is deprecated, use location instead.
+ string zone = 101 [deprecated = true];
+
+ // [Output only] The IP address of this cluster's master endpoint.
+ // The endpoint can be accessed from the internet at
+ // `https://username:password@endpoint/`.
+ //
+ // See the `masterAuth` property of this resource for username and
+ // password information.
+ string endpoint = 102;
+
+ // The initial Kubernetes version for this cluster. Valid versions are those
+ // found in validMasterVersions returned by getServerConfig. The version can
+ // be upgraded over time; such upgrades are reflected in
+ // currentMasterVersion and currentNodeVersion.
+ //
+ // Users may specify either explicit versions offered by
+ // Kubernetes Engine or version aliases, which have the following behavior:
+ //
+ // - "latest": picks the highest valid Kubernetes version
+ // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
+ // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
+ // - "1.X.Y-gke.N": picks an explicit Kubernetes version
+ // - "","-": picks the default Kubernetes version
+ string initial_cluster_version = 103;
+
+ // [Output only] The current software version of the master endpoint.
+ string current_master_version = 104;
+
+ // [Output only] Deprecated, use
+ // [NodePools.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools)
+ // instead. The current version of the node software components. If they are
+ // currently at multiple versions because they're in the process of being
+ // upgraded, this reflects the minimum version of all nodes.
+ string current_node_version = 105 [deprecated = true];
+
+ // [Output only] The time the cluster was created, in
+ // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ string create_time = 106;
+
+ // [Output only] The current status of this cluster.
+ Status status = 107;
+
+ // [Output only] Deprecated. Use conditions instead.
+ // Additional information about the current status of this
+ // cluster, if available.
+ string status_message = 108 [deprecated = true];
+
+ // [Output only] The size of the address space on each node for hosting
+ // containers. This is provisioned from within the `container_ipv4_cidr`
+ // range. This field will only be set when cluster is in route-based network
+ // mode.
+ int32 node_ipv4_cidr_size = 109;
+
+ // [Output only] The IP address range of the Kubernetes services in
+ // this cluster, in
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `1.2.3.4/29`). Service addresses are
+ // typically put in the last `/16` from the container CIDR.
+ string services_ipv4_cidr = 110;
+
+ // Deprecated. Use node_pools.instance_group_urls.
+ repeated string instance_group_urls = 111 [deprecated = true];
+
+ // [Output only] The number of nodes currently in the cluster. Deprecated.
+ // Call Kubernetes API directly to retrieve node information.
+ int32 current_node_count = 112 [deprecated = true];
+
+ // [Output only] The time the cluster will be automatically
+ // deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ string expire_time = 113;
+
+ // [Output only] The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+ // or
+ // [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+ // in which the cluster resides.
+ string location = 114;
+
+ // Enable the ability to use Cloud TPUs in this cluster.
+ bool enable_tpu = 115;
+
+ // [Output only] The IP address range of the Cloud TPUs in this cluster, in
+ // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
+ // notation (e.g. `1.2.3.4/29`).
+ string tpu_ipv4_cidr_block = 116;
+
+ // Which conditions caused the current cluster state.
+ repeated StatusCondition conditions = 118;
+
+ // Autopilot configuration for the cluster.
+ Autopilot autopilot = 128;
+
+ // Output only. Unique id for the cluster.
+ string id = 129 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Default NodePool settings for the entire cluster. These settings are
+ // overridden if specified on the specific NodePool object.
+ optional NodePoolDefaults node_pool_defaults = 131;
+
+ // Logging configuration for the cluster.
+ LoggingConfig logging_config = 132;
+
+ // Monitoring configuration for the cluster.
+ MonitoringConfig monitoring_config = 133;
+
+ // Node pool configs that apply to all auto-provisioned node pools
+ // in autopilot clusters and node auto-provisioning enabled clusters.
+ NodePoolAutoConfig node_pool_auto_config = 136;
+}
+
+// Node pool configs that apply to all auto-provisioned node pools
+// in autopilot clusters and node auto-provisioning enabled clusters.
+message NodePoolAutoConfig {
+ // The list of instance tags applied to all nodes. Tags are used to identify
+ // valid sources or targets for network firewalls and are specified by
+ // the client during cluster creation. Each tag within the list
+ // must comply with RFC1035.
+ NetworkTags network_tags = 1;
+}
+
+// Subset of Nodepool message that has defaults.
+message NodePoolDefaults {
+ // Subset of NodeConfig message that has defaults.
+ NodeConfigDefaults node_config_defaults = 1;
+}
+
+// Subset of NodeConfig message that has defaults.
+message NodeConfigDefaults {
+ // GCFS (Google Container File System, also known as Riptide) options.
+ GcfsConfig gcfs_config = 1;
+
+ // Logging configuration for node pools.
+ NodePoolLoggingConfig logging_config = 3;
+}
+
+// ClusterUpdate describes an update to the cluster. Exactly one update can
+// be applied to a cluster with each request, so at most one field can be
+// provided.
+message ClusterUpdate {
+ // The Kubernetes version to change the nodes to (typically an
+ // upgrade).
+ //
+ // Users may specify either explicit versions offered by
+ // Kubernetes Engine or version aliases, which have the following behavior:
+ //
+ // - "latest": picks the highest valid Kubernetes version
+ // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
+ // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
+ // - "1.X.Y-gke.N": picks an explicit Kubernetes version
+ // - "-": picks the Kubernetes master version
+ string desired_node_version = 4;
+
+ // The monitoring service the cluster should use to write metrics.
+ // Currently available options:
+ //
+ // * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
+ // service with a Kubernetes-native resource model
+ // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
+ // longer available as of GKE 1.15).
+ // * `none` - No metrics will be exported from the cluster.
+ //
+ // If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
+ // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
+ string desired_monitoring_service = 5;
+
+ // Configurations for the various addons available to run in the cluster.
+ AddonsConfig desired_addons_config = 6;
+
+ // The node pool to be upgraded. This field is mandatory if
+ // "desired_node_version", "desired_image_family" or
+ // "desired_node_pool_autoscaling" is specified and there is more than one
+ // node pool on the cluster.
+ string desired_node_pool_id = 7;
+
+ // The desired image type for the node pool.
+ // NOTE: Set the "desired_node_pool" field as well.
+ string desired_image_type = 8;
+
+ // Configuration of etcd encryption.
+ DatabaseEncryption desired_database_encryption = 46;
+
+ // Configuration for Workload Identity.
+ WorkloadIdentityConfig desired_workload_identity_config = 47;
+
+ // Configuration for issuance of mTLS keys and certificates to Kubernetes
+ // pods.
+ MeshCertificates desired_mesh_certificates = 67;
+
+ // Configuration for Shielded Nodes.
+ ShieldedNodes desired_shielded_nodes = 48;
+
+ // The desired configuration for the fine-grained cost management feature.
+ CostManagementConfig desired_cost_management_config = 49;
+
+ // DNSConfig contains clusterDNS config for this cluster.
+ DNSConfig desired_dns_config = 53;
+
+ // Autoscaler configuration for the node pool specified in
+ // desired_node_pool_id. If there is only one pool in the
+ // cluster and desired_node_pool_id is not provided then
+ // the change applies to that single node pool.
+ NodePoolAutoscaling desired_node_pool_autoscaling = 9;
+
+ // The desired list of Google Compute Engine
+ // [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster's nodes should be located.
+ //
+ // This list must always include the cluster's primary zone.
+ //
+ // Warning: changing cluster locations will update the locations of all node
+ // pools and will result in nodes being added and/or removed.
+ repeated string desired_locations = 10;
+
+ // The desired configuration options for master authorized networks feature.
+ MasterAuthorizedNetworksConfig desired_master_authorized_networks_config = 12;
+
+ // Cluster-level autoscaling configuration.
+ ClusterAutoscaling desired_cluster_autoscaling = 15;
+
+ // The desired configuration options for the Binary Authorization feature.
+ BinaryAuthorization desired_binary_authorization = 16;
+
+ // The logging service the cluster should use to write logs.
+ // Currently available options:
+ //
+ // * `logging.googleapis.com/kubernetes` - The Cloud Logging
+ // service with a Kubernetes-native resource model
+ // * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
+ // available as of GKE 1.15).
+ // * `none` - no logs will be exported from the cluster.
+ //
+ // If left as an empty string,`logging.googleapis.com/kubernetes` will be
+ // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
+ string desired_logging_service = 19;
+
+ // The desired configuration for exporting resource usage.
+ ResourceUsageExportConfig desired_resource_usage_export_config = 21;
+
+ // Cluster-level Vertical Pod Autoscaling configuration.
+ VerticalPodAutoscaling desired_vertical_pod_autoscaling = 22;
+
+ // The desired private cluster configuration.
+ PrivateClusterConfig desired_private_cluster_config = 25;
+
+ // The desired config of Intra-node visibility.
+ IntraNodeVisibilityConfig desired_intra_node_visibility_config = 26;
+
+ // The desired status of whether to disable default sNAT for this cluster.
+ DefaultSnatStatus desired_default_snat_status = 28;
+
+ // The desired release channel configuration.
+ ReleaseChannel desired_release_channel = 31;
+
+ // The desired L4 Internal Load Balancer Subsetting configuration.
+ ILBSubsettingConfig desired_l4ilb_subsetting_config = 39;
+
+ // The desired datapath provider for the cluster.
+ DatapathProvider desired_datapath_provider = 50;
+
+ // The desired state of IPv6 connectivity to Google Services.
+ PrivateIPv6GoogleAccess desired_private_ipv6_google_access = 51;
+
+ // The desired notification configuration.
+ NotificationConfig desired_notification_config = 55;
+
+ // The desired authenticator groups config for the cluster.
+ AuthenticatorGroupsConfig desired_authenticator_groups_config = 63;
+
+ // The desired logging configuration.
+ LoggingConfig desired_logging_config = 64;
+
+ // The desired monitoring configuration.
+ MonitoringConfig desired_monitoring_config = 65;
+
+ // The desired Identity Service component configuration.
+ IdentityServiceConfig desired_identity_service_config = 66;
+
+ // ServiceExternalIPsConfig specifies the config for the use of Services with
+ // ExternalIPs field.
+ ServiceExternalIPsConfig desired_service_external_ips_config = 60;
+
+ // Enable/Disable private endpoint for the cluster's master.
+ optional bool desired_enable_private_endpoint = 71;
+
+ // The Kubernetes version to change the master to.
+ //
+ // Users may specify either explicit versions offered by
+ // Kubernetes Engine or version aliases, which have the following behavior:
+ //
+ // - "latest": picks the highest valid Kubernetes version
+ // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
+ // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
+ // - "1.X.Y-gke.N": picks an explicit Kubernetes version
+ // - "-": picks the default Kubernetes version
+ string desired_master_version = 100;
+
+ // The desired GCFS config for the cluster
+ GcfsConfig desired_gcfs_config = 109;
+
+ // The desired network tags that apply to all auto-provisioned node pools
+ // in autopilot clusters and node auto-provisioning enabled clusters.
+ NetworkTags desired_node_pool_auto_config_network_tags = 110;
+
+ // The desired config of Gateway API on this cluster.
+ GatewayAPIConfig desired_gateway_api_config = 114;
+
+ // The desired node pool logging configuration defaults for the cluster.
+ NodePoolLoggingConfig desired_node_pool_logging_config = 116;
+}
+
+// This operation resource represents operations that may have happened or are
+// happening on the cluster. All fields are output only.
+message Operation {
+ // Current status of the operation.
+ enum Status {
+ // Not set.
+ STATUS_UNSPECIFIED = 0;
+
+ // The operation has been created.
+ PENDING = 1;
+
+ // The operation is currently running.
+ RUNNING = 2;
+
+ // The operation is done, either cancelled or completed.
+ DONE = 3;
+
+ // The operation is aborting.
+ ABORTING = 4;
+ }
+
+ // Operation type.
+ enum Type {
+ // Not set.
+ TYPE_UNSPECIFIED = 0;
+
+ // Cluster create.
+ CREATE_CLUSTER = 1;
+
+ // Cluster delete.
+ DELETE_CLUSTER = 2;
+
+ // A master upgrade.
+ UPGRADE_MASTER = 3;
+
+ // A node upgrade.
+ UPGRADE_NODES = 4;
+
+ // Cluster repair.
+ REPAIR_CLUSTER = 5;
+
+ // Cluster update.
+ UPDATE_CLUSTER = 6;
+
+ // Node pool create.
+ CREATE_NODE_POOL = 7;
+
+ // Node pool delete.
+ DELETE_NODE_POOL = 8;
+
+ // Set node pool management.
+ SET_NODE_POOL_MANAGEMENT = 9;
+
+ // Automatic node pool repair.
+ AUTO_REPAIR_NODES = 10;
+
+ // Automatic node upgrade.
+ AUTO_UPGRADE_NODES = 11;
+
+ // Set labels.
+ SET_LABELS = 12;
+
+ // Set/generate master auth materials
+ SET_MASTER_AUTH = 13;
+
+ // Set node pool size.
+ SET_NODE_POOL_SIZE = 14;
+
+ // Updates network policy for a cluster.
+ SET_NETWORK_POLICY = 15;
+
+ // Set the maintenance policy.
+ SET_MAINTENANCE_POLICY = 16;
+ }
+
+ // The server-assigned ID for the operation.
+ string name = 1;
+
+ // The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // operation is taking place. This field is deprecated, use location instead.
+ string zone = 2 [deprecated = true];
+
+ // The operation type.
+ Type operation_type = 3;
+
+ // The current status of the operation.
+ Status status = 4;
+
+ // Detailed operation progress, if available.
+ string detail = 8;
+
+ // Output only. If an error has occurred, a textual description of the error.
+ // Deprecated. Use the field error instead.
+ string status_message = 5 [
+ deprecated = true,
+ (google.api.field_behavior) = OUTPUT_ONLY
+ ];
+
+ // Server-defined URL for the resource.
+ string self_link = 6;
+
+ // Server-defined URL for the target of the operation.
+ string target_link = 7;
+
+ // [Output only] The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+ // or
+ // [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+ // in which the cluster resides.
+ string location = 9;
+
+ // [Output only] The time the operation started, in
+ // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ string start_time = 10;
+
+ // [Output only] The time the operation completed, in
+ // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ string end_time = 11;
+
+ // Output only. [Output only] Progress information for an operation.
+ OperationProgress progress = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Which conditions caused the current cluster state.
+ // Deprecated. Use field error instead.
+ repeated StatusCondition cluster_conditions = 13 [deprecated = true];
+
+ // Which conditions caused the current node pool state.
+ // Deprecated. Use field error instead.
+ repeated StatusCondition nodepool_conditions = 14 [deprecated = true];
+
+ // The error result of the operation in case of failure.
+ google.rpc.Status error = 15;
+}
+
+// Information about operation (or operation stage) progress.
+message OperationProgress {
+ // Progress metric is (string, int|float|string) pair.
+ message Metric {
+ // Required. Metric name, e.g., "nodes total", "percent done".
+ string name = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Strictly one of the values is required.
+ oneof value {
+ // For metrics with integer value.
+ int64 int_value = 2;
+
+ // For metrics with floating point value.
+ double double_value = 3;
+
+ // For metrics with custom values (ratios, visual progress, etc.).
+ string string_value = 4;
+ }
+ }
+
+ // A non-parameterized string describing an operation stage.
+ // Unset for single-stage operations.
+ string name = 1;
+
+ // Status of an operation stage.
+ // Unset for single-stage operations.
+ Operation.Status status = 2;
+
+ // Progress metric bundle, for example:
+ // metrics: [{name: "nodes done", int_value: 15},
+ // {name: "nodes total", int_value: 32}]
+ // or
+ // metrics: [{name: "progress", double_value: 0.56},
+ // {name: "progress scale", double_value: 1.0}]
+ repeated Metric metrics = 3;
+
+ // Substages of an operation or a stage.
+ repeated OperationProgress stages = 4;
+}
+
+// CreateClusterRequest creates a cluster.
+message CreateClusterRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the parent field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the parent
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Required. A [cluster
+ // resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters)
+ Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // The parent (project and location) where the cluster will be created.
+ // Specified in the format `projects/*/locations/*`.
+ string parent = 5;
+}
+
+// GetClusterRequest gets the settings of a cluster.
+message GetClusterRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to retrieve.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // The name (project, location, cluster) of the cluster to retrieve.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 5;
+}
+
+// UpdateClusterRequest updates the settings of a cluster.
+message UpdateClusterRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. A description of the update.
+ ClusterUpdate update = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to update.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 5;
+}
+
+// UpdateNodePoolRequests update a node pool's image and/or version.
+message UpdateNodePoolRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // Required. The Kubernetes version to change the nodes to (typically an
+ // upgrade).
+ //
+ // Users may specify either explicit versions offered by Kubernetes Engine or
+ // version aliases, which have the following behavior:
+ //
+ // - "latest": picks the highest valid Kubernetes version
+ // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
+ // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
+ // - "1.X.Y-gke.N": picks an explicit Kubernetes version
+ // - "-": picks the Kubernetes master version
+ string node_version = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The desired image type for the node pool.
+ string image_type = 6 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster, node pool) of the node pool to
+ // update. Specified in the format
+ // `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 8;
+
+ // The desired list of Google Compute Engine
+ // [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ // node pool's nodes should be located. Changing the locations for a node pool
+ // will result in nodes being either created or removed from the node pool,
+ // depending on whether locations are being added or removed.
+ repeated string locations = 13;
+
+ // The desired workload metadata config for the node pool.
+ WorkloadMetadataConfig workload_metadata_config = 14;
+
+ // Upgrade settings control disruption and speed of the upgrade.
+ NodePool.UpgradeSettings upgrade_settings = 15;
+
+ // The desired network tags to be applied to all nodes in the node pool.
+ // If this field is not present, the tags will not be changed. Otherwise,
+ // the existing network tags will be *replaced* with the provided tags.
+ NetworkTags tags = 16;
+
+ // The desired node taints to be applied to all nodes in the node pool.
+ // If this field is not present, the taints will not be changed. Otherwise,
+ // the existing node taints will be *replaced* with the provided taints.
+ NodeTaints taints = 17;
+
+ // The desired node labels to be applied to all nodes in the node pool.
+ // If this field is not present, the labels will not be changed. Otherwise,
+ // the existing node labels will be *replaced* with the provided labels.
+ NodeLabels labels = 18;
+
+ // Parameters that can be configured on Linux nodes.
+ LinuxNodeConfig linux_node_config = 19;
+
+ // Node kubelet configs.
+ NodeKubeletConfig kubelet_config = 20;
+
+ // Node network config.
+ NodeNetworkConfig node_network_config = 21;
+
+ // GCFS config.
+ GcfsConfig gcfs_config = 22;
+
+ // Confidential nodes config.
+ // All the nodes in the node pool will be Confidential VM once enabled.
+ ConfidentialNodes confidential_nodes = 23;
+
+ // Enable or disable gvnic on the node pool.
+ VirtualNIC gvnic = 29;
+
+ // Logging configuration.
+ NodePoolLoggingConfig logging_config = 32;
+
+ // The resource labels for the node pool to use to annotate any related
+ // Google Compute Engine resources.
+ ResourceLabels resource_labels = 33;
+}
+
+// SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
+message SetNodePoolAutoscalingRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // Required. Autoscaling configuration for the node pool.
+ NodePoolAutoscaling autoscaling = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster, node pool) of the node pool to set
+ // autoscaler settings. Specified in the format
+ // `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 6;
+}
+
+// SetLoggingServiceRequest sets the logging service of a cluster.
+message SetLoggingServiceRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The logging service the cluster should use to write logs.
+ // Currently available options:
+ //
+ // * `logging.googleapis.com/kubernetes` - The Cloud Logging
+ // service with a Kubernetes-native resource model
+ // * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
+ // available as of GKE 1.15).
+ // * `none` - no logs will be exported from the cluster.
+ //
+ // If left as an empty string,`logging.googleapis.com/kubernetes` will be
+ // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
+ string logging_service = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to set logging.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 5;
+}
+
+// SetMonitoringServiceRequest sets the monitoring service of a cluster.
+message SetMonitoringServiceRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The monitoring service the cluster should use to write metrics.
+ // Currently available options:
+ //
+ // * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
+ // service with a Kubernetes-native resource model
+ // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
+ // longer available as of GKE 1.15).
+ // * `none` - No metrics will be exported from the cluster.
+ //
+ // If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
+ // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
+ string monitoring_service = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to set monitoring.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 6;
+}
+
+// SetAddonsConfigRequest sets the addons associated with the cluster.
+message SetAddonsConfigRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The desired configurations for the various addons available to run in the
+ // cluster.
+ AddonsConfig addons_config = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to set addons.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 6;
+}
+
+// SetLocationsRequest sets the locations of the cluster.
+message SetLocationsRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The desired list of Google Compute Engine
+ // [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster's nodes should be located. Changing the locations a cluster is in
+ // will result in nodes being either created or removed from the cluster,
+ // depending on whether locations are being added or removed.
+ //
+ // This list must always include the cluster's primary zone.
+ repeated string locations = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to set locations.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 6;
+}
+
+// UpdateMasterRequest updates the master of the cluster.
+message UpdateMasterRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The Kubernetes version to change the master to.
+ //
+ // Users may specify either explicit versions offered by Kubernetes Engine or
+ // version aliases, which have the following behavior:
+ //
+ // - "latest": picks the highest valid Kubernetes version
+ // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
+ // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
+ // - "1.X.Y-gke.N": picks an explicit Kubernetes version
+ // - "-": picks the default Kubernetes version
+ string master_version = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to update.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 7;
+}
+
+// SetMasterAuthRequest updates the admin password of a cluster.
+message SetMasterAuthRequest {
+ // Operation type: what type update to perform.
+ enum Action {
+ // Operation is unknown and will error out.
+ UNKNOWN = 0;
+
+ // Set the password to a user generated value.
+ SET_PASSWORD = 1;
+
+ // Generate a new password and set it to that.
+ GENERATE_PASSWORD = 2;
+
+ // Set the username. If an empty username is provided, basic authentication
+ // is disabled for the cluster. If a non-empty username is provided, basic
+ // authentication is enabled, with either a provided password or a generated
+ // one.
+ SET_USERNAME = 3;
+ }
+
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to upgrade.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The exact form of action to be taken on the master auth.
+ Action action = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. A description of the update.
+ MasterAuth update = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster) of the cluster to set auth.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 7;
+}
+
+// DeleteClusterRequest deletes a cluster.
+message DeleteClusterRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to delete.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // The name (project, location, cluster) of the cluster to delete.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 4;
+}
+
+// ListClustersRequest lists clusters.
+message ListClustersRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the parent field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides, or "-" for all zones. This field has been deprecated and
+ // replaced by the parent field.
+ string zone = 2 [deprecated = true];
+
+ // The parent (project and location) where the clusters will be listed.
+ // Specified in the format `projects/*/locations/*`.
+ // Location "-" matches all zones and all regions.
+ string parent = 4;
+}
+
+// ListClustersResponse is the result of ListClustersRequest.
+message ListClustersResponse {
+ // A list of clusters in the project in the specified zone, or
+ // across all ones.
+ repeated Cluster clusters = 1;
+
+ // If any zones are listed here, the list of clusters returned
+ // may be missing those zones.
+ repeated string missing_zones = 2;
+}
+
+// GetOperationRequest gets a single operation.
+message GetOperationRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The server-assigned `name` of the operation.
+ // This field has been deprecated and replaced by the name field.
+ string operation_id = 3 [deprecated = true];
+
+ // The name (project, location, operation id) of the operation to get.
+ // Specified in the format `projects/*/locations/*/operations/*`.
+ string name = 5;
+}
+
+// ListOperationsRequest lists operations.
+message ListOperationsRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the parent field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) to return
+ // operations for, or `-` for all zones. This field has been deprecated and
+ // replaced by the parent field.
+ string zone = 2 [deprecated = true];
+
+ // The parent (project and location) where the operations will be listed.
+ // Specified in the format `projects/*/locations/*`.
+ // Location "-" matches all zones and all regions.
+ string parent = 4;
+}
+
+// CancelOperationRequest cancels a single operation.
+message CancelOperationRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // operation resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The server-assigned `name` of the operation.
+ // This field has been deprecated and replaced by the name field.
+ string operation_id = 3 [deprecated = true];
+
+ // The name (project, location, operation id) of the operation to cancel.
+ // Specified in the format `projects/*/locations/*/operations/*`.
+ string name = 4;
+}
+
+// ListOperationsResponse is the result of ListOperationsRequest.
+message ListOperationsResponse {
+ // A list of operations in the project in the specified zone.
+ repeated Operation operations = 1;
+
+ // If any zones are listed here, the list of operations returned
+ // may be missing the operations from those zones.
+ repeated string missing_zones = 2;
+}
+
+// Gets the current Kubernetes Engine service configuration.
+message GetServerConfigRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) to return
+ // operations for. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // The name (project and location) of the server config to get,
+ // specified in the format `projects/*/locations/*`.
+ string name = 4;
+}
+
+// Kubernetes Engine service configuration.
+message ServerConfig {
+ // ReleaseChannelConfig exposes configuration for a release channel.
+ message ReleaseChannelConfig {
+ // The release channel this configuration applies to.
+ ReleaseChannel.Channel channel = 1;
+
+ // The default version for newly created clusters on the channel.
+ string default_version = 2;
+
+ // List of valid versions for the channel.
+ repeated string valid_versions = 4;
+ }
+
+ // Version of Kubernetes the service deploys by default.
+ string default_cluster_version = 1;
+
+ // List of valid node upgrade target versions, in descending order.
+ repeated string valid_node_versions = 3;
+
+ // Default image type.
+ string default_image_type = 4;
+
+ // List of valid image types.
+ repeated string valid_image_types = 5;
+
+ // List of valid master versions, in descending order.
+ repeated string valid_master_versions = 6;
+
+ // List of release channel configurations.
+ repeated ReleaseChannelConfig channels = 9;
+}
+
+// CreateNodePoolRequest creates a node pool for a cluster.
+message CreateNodePoolRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the parent field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the parent
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the parent field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The node pool to create.
+ NodePool node_pool = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The parent (project, location, cluster name) where the node pool will be
+ // created. Specified in the format
+ // `projects/*/locations/*/clusters/*`.
+ string parent = 6;
+}
+
+// DeleteNodePoolRequest deletes a node pool for a cluster.
+message DeleteNodePoolRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool to delete.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // The name (project, location, cluster, node pool id) of the node pool to
+ // delete. Specified in the format
+ // `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 6;
+}
+
+// ListNodePoolsRequest lists the node pool(s) for a cluster.
+message ListNodePoolsRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the parent field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the parent
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the parent field.
+ string cluster_id = 3 [deprecated = true];
+
+ // The parent (project, location, cluster name) where the node pools will be
+ // listed. Specified in the format `projects/*/locations/*/clusters/*`.
+ string parent = 5;
+}
+
+// GetNodePoolRequest retrieves a node pool for a cluster.
+message GetNodePoolRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // The name (project, location, cluster, node pool id) of the node pool to
+ // get. Specified in the format
+ // `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 6;
+}
+
+// Settings for blue-green upgrade.
+message BlueGreenSettings {
+ // Standard rollout policy is the default policy for blue-green.
+ message StandardRolloutPolicy {
+ // Blue pool size to drain in a batch.
+ oneof update_batch_size {
+ // Percentage of the blue pool nodes to drain in a batch.
+ // The range of this field should be (0.0, 1.0].
+ float batch_percentage = 1;
+
+ // Number of blue nodes to drain in a batch.
+ int32 batch_node_count = 2;
+ }
+
+ // Soak time after each batch gets drained. Default to zero.
+ optional google.protobuf.Duration batch_soak_duration = 3;
+ }
+
+ // The rollout policy controls the general rollout progress of blue-green.
+ oneof rollout_policy {
+ // Standard policy for the blue-green upgrade.
+ StandardRolloutPolicy standard_rollout_policy = 1;
+ }
+
+ // Time needed after draining entire blue pool. After this period, blue pool
+ // will be cleaned up.
+ optional google.protobuf.Duration node_pool_soak_duration = 2;
+}
+
+// NodePool contains the name and configuration for a cluster's node pool.
+// Node pools are a set of nodes (i.e. VM's), with a common configuration and
+// specification, under the control of the cluster master. They may have a set
+// of Kubernetes labels applied to them, which may be used to reference them
+// during pod scheduling. They may also be resized up or down, to accommodate
+// the workload.
+message NodePool {
+ // These upgrade settings control the level of parallelism and the level of
+ // disruption caused by an upgrade.
+ //
+ // maxUnavailable controls the number of nodes that can be simultaneously
+ // unavailable.
+ //
+ // maxSurge controls the number of additional nodes that can be added to the
+ // node pool temporarily for the time of the upgrade to increase the number of
+ // available nodes.
+ //
+ // (maxUnavailable + maxSurge) determines the level of parallelism (how many
+ // nodes are being upgraded at the same time).
+ //
+ // Note: upgrades inevitably introduce some disruption since workloads need to
+ // be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+ // this holds true. (Disruption stays within the limits of
+ // PodDisruptionBudget, if it is configured.)
+ //
+ // Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+ // maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+ // simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+ // down 3 old (not yet upgraded) nodes at the same time. This ensures that
+ // there are always at least 4 nodes available.
+ //
+ // These upgrade settings configure the upgrade strategy for the node pool.
+ // Use strategy to switch between the strategies applied to the node pool.
+ //
+ // If the strategy is ROLLING, use max_surge and max_unavailable to control
+ // the level of parallelism and the level of disruption caused by upgrade.
+ // 1. maxSurge controls the number of additional nodes that can be added to
+ // the node pool temporarily for the time of the upgrade to increase the
+ // number of available nodes.
+ // 2. maxUnavailable controls the number of nodes that can be simultaneously
+ // unavailable.
+ // 3. (maxUnavailable + maxSurge) determines the level of parallelism (how
+ // many nodes are being upgraded at the same time).
+ //
+ // If the strategy is BLUE_GREEN, use blue_green_settings to configure the
+ // blue-green upgrade related settings.
+ // 1. standard_rollout_policy is the default policy. The policy is used to
+ // control the way blue pool gets drained. The draining is executed in the
+ // batch mode. The batch size could be specified as either percentage of the
+ // node pool size or the number of nodes. batch_soak_duration is the soak
+ // time after each batch gets drained.
+ // 2. node_pool_soak_duration is the soak time after all blue nodes are
+ // drained. After this period, the blue pool nodes will be deleted.
+ message UpgradeSettings {
+ // The maximum number of nodes that can be created beyond the current size
+ // of the node pool during the upgrade process.
+ int32 max_surge = 1;
+
+ // The maximum number of nodes that can be simultaneously unavailable during
+ // the upgrade process. A node is considered available if its status is
+ // Ready.
+ int32 max_unavailable = 2;
+
+ // Update strategy of the node pool.
+ optional NodePoolUpdateStrategy strategy = 3;
+
+ // Settings for blue-green upgrade strategy.
+ optional BlueGreenSettings blue_green_settings = 4;
+ }
+
+ // UpdateInfo contains resource (instance groups, etc), status and other
+ // intermediate information relevant to a node pool upgrade.
+ message UpdateInfo {
+ // Information relevant to blue-green upgrade.
+ message BlueGreenInfo {
+ // Phase represents the different stages blue-green upgrade is running in.
+ enum Phase {
+ // Unspecified phase.
+ PHASE_UNSPECIFIED = 0;
+
+ // blue-green upgrade has been initiated.
+ UPDATE_STARTED = 1;
+
+ // Start creating green pool nodes.
+ CREATING_GREEN_POOL = 2;
+
+ // Start cordoning blue pool nodes.
+ CORDONING_BLUE_POOL = 3;
+
+ // Start draining blue pool nodes.
+ DRAINING_BLUE_POOL = 4;
+
+ // Start soaking time after draining entire blue pool.
+ NODE_POOL_SOAKING = 5;
+
+ // Start deleting blue nodes.
+ DELETING_BLUE_POOL = 6;
+
+ // Rollback has been initiated.
+ ROLLBACK_STARTED = 7;
+ }
+
+ // Current blue-green upgrade phase.
+ Phase phase = 1;
+
+ // The resource URLs of the [managed instance groups]
+ // (/compute/docs/instance-groups/creating-groups-of-managed-instances)
+ // associated with blue pool.
+ repeated string blue_instance_group_urls = 2;
+
+ // The resource URLs of the [managed instance groups]
+ // (/compute/docs/instance-groups/creating-groups-of-managed-instances)
+ // associated with green pool.
+ repeated string green_instance_group_urls = 3;
+
+ // Time to start deleting blue pool to complete blue-green upgrade,
+ // in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ string blue_pool_deletion_start_time = 4;
+
+ // Version of green pool.
+ string green_pool_version = 5;
+ }
+
+ // Information of a blue-green upgrade.
+ BlueGreenInfo blue_green_info = 1;
+ }
+
+ // The current status of the node pool instance.
+ enum Status {
+ // Not set.
+ STATUS_UNSPECIFIED = 0;
+
+ // The PROVISIONING state indicates the node pool is being created.
+ PROVISIONING = 1;
+
+ // The RUNNING state indicates the node pool has been created
+ // and is fully usable.
+ RUNNING = 2;
+
+ // The RUNNING_WITH_ERROR state indicates the node pool has been created
+ // and is partially usable. Some error state has occurred and some
+ // functionality may be impaired. Customer may need to reissue a request
+ // or trigger a new update.
+ RUNNING_WITH_ERROR = 3;
+
+ // The RECONCILING state indicates that some work is actively being done on
+ // the node pool, such as upgrading node software. Details can
+ // be found in the `statusMessage` field.
+ RECONCILING = 4;
+
+ // The STOPPING state indicates the node pool is being deleted.
+ STOPPING = 5;
+
+ // The ERROR state indicates the node pool may be unusable. Details
+ // can be found in the `statusMessage` field.
+ ERROR = 6;
+ }
+
+ // The name of the node pool.
+ string name = 1;
+
+ // The node configuration of the pool.
+ NodeConfig config = 2;
+
+ // The initial node count for the pool. You must ensure that your
+ // Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
+ // is sufficient for this number of instances. You must also have available
+ // firewall and routes quota.
+ int32 initial_node_count = 3;
+
+ // The list of Google Compute Engine
+ // [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ // NodePool's nodes should be located.
+ //
+ // If this value is unspecified during node pool creation, the
+ // [Cluster.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.FIELDS.locations)
+ // value will be used, instead.
+ //
+ // Warning: changing node pool locations will result in nodes being added
+ // and/or removed.
+ repeated string locations = 13;
+
+ // Networking configuration for this NodePool. If specified, it overrides the
+ // cluster-level defaults.
+ NodeNetworkConfig network_config = 14;
+
+ // [Output only] Server-defined URL for the resource.
+ string self_link = 100;
+
+ // The version of the Kubernetes of this node.
+ string version = 101;
+
+ // [Output only] The resource URLs of the [managed instance
+ // groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+ // associated with this node pool.
+ // During the node pool blue-green upgrade operation, the URLs contain both
+ // blue and green resources.
+ repeated string instance_group_urls = 102;
+
+ // [Output only] The status of the nodes in this pool instance.
+ Status status = 103;
+
+ // [Output only] Deprecated. Use conditions instead.
+ // Additional information about the current status of this
+ // node pool instance, if available.
+ string status_message = 104 [deprecated = true];
+
+ // Autoscaler configuration for this NodePool. Autoscaler is enabled
+ // only if a valid configuration is present.
+ NodePoolAutoscaling autoscaling = 4;
+
+ // NodeManagement configuration for this NodePool.
+ NodeManagement management = 5;
+
+ // The constraint on the maximum number of pods that can be run
+ // simultaneously on a node in the node pool.
+ MaxPodsConstraint max_pods_constraint = 6;
+
+ // Which conditions caused the current node pool state.
+ repeated StatusCondition conditions = 105;
+
+ // [Output only] The pod CIDR block size per node in this node pool.
+ int32 pod_ipv4_cidr_size = 7;
+
+ // Upgrade settings control disruption and speed of the upgrade.
+ UpgradeSettings upgrade_settings = 107;
+
+ // Output only. [Output only] Update info contains relevant information during a node
+ // pool update.
+ UpdateInfo update_info = 109 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
+
+// NodeManagement defines the set of node management services turned on for the
+// node pool.
+message NodeManagement {
+ // A flag that specifies whether node auto-upgrade is enabled for the node
+ // pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
+ // up to date with the latest release version of Kubernetes.
+ bool auto_upgrade = 1;
+
+ // A flag that specifies whether the node auto-repair is enabled for the node
+ // pool. If enabled, the nodes in this node pool will be monitored and, if
+ // they fail health checks too many times, an automatic repair action will be
+ // triggered.
+ bool auto_repair = 2;
+
+ // Specifies the Auto Upgrade knobs for the node pool.
+ AutoUpgradeOptions upgrade_options = 10;
+}
+
+// AutoUpgradeOptions defines the set of options for the user to control how
+// the Auto Upgrades will proceed.
+message AutoUpgradeOptions {
+ // [Output only] This field is set when upgrades are about to commence
+ // with the approximate start time for the upgrades, in
+ // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+ string auto_upgrade_start_time = 1;
+
+ // [Output only] This field is set when upgrades are about to commence
+ // with the description of the upgrade.
+ string description = 2;
+}
+
+// MaintenancePolicy defines the maintenance policy to be used for the cluster.
+message MaintenancePolicy {
+ // Specifies the maintenance window in which maintenance may be performed.
+ MaintenanceWindow window = 1;
+
+ // A hash identifying the version of this policy, so that updates to fields of
+ // the policy won't accidentally undo intermediate changes (and so that users
+ // of the API unaware of some fields won't accidentally remove other fields).
+ // Make a `get()` request to the cluster to get the current
+ // resource version and include it with requests to set the policy.
+ string resource_version = 3;
+}
+
+// MaintenanceWindow defines the maintenance window to be used for the cluster.
+message MaintenanceWindow {
+ oneof policy {
+ // DailyMaintenanceWindow specifies a daily maintenance operation window.
+ DailyMaintenanceWindow daily_maintenance_window = 2;
+
+ // RecurringWindow specifies some number of recurring time periods for
+ // maintenance to occur. The time windows may be overlapping. If no
+ // maintenance windows are set, maintenance can occur at any time.
+ RecurringTimeWindow recurring_window = 3;
+ }
+
+ // Exceptions to maintenance window. Non-emergency maintenance should not
+ // occur in these windows.
+ map maintenance_exclusions = 4;
+}
+
+// Represents an arbitrary window of time.
+message TimeWindow {
+ oneof options {
+ // MaintenanceExclusionOptions provides maintenance exclusion related
+ // options.
+ MaintenanceExclusionOptions maintenance_exclusion_options = 3;
+ }
+
+ // The time that the window first starts.
+ google.protobuf.Timestamp start_time = 1;
+
+ // The time that the window ends. The end time should take place after the
+ // start time.
+ google.protobuf.Timestamp end_time = 2;
+}
+
+// Represents the Maintenance exclusion option.
+message MaintenanceExclusionOptions {
+ // Scope of exclusion.
+ enum Scope {
+ // NO_UPGRADES excludes all upgrades, including patch upgrades and minor
+ // upgrades across control planes and nodes. This is the default exclusion
+ // behavior.
+ NO_UPGRADES = 0;
+
+ // NO_MINOR_UPGRADES excludes all minor upgrades for the cluster, only
+ // patches are allowed.
+ NO_MINOR_UPGRADES = 1;
+
+ // NO_MINOR_OR_NODE_UPGRADES excludes all minor upgrades for the cluster,
+ // and also exclude all node pool upgrades. Only control
+ // plane patches are allowed.
+ NO_MINOR_OR_NODE_UPGRADES = 2;
+ }
+
+ // Scope specifies the upgrade scope which upgrades are blocked by the
+ // exclusion.
+ Scope scope = 1;
+}
+
+// Represents an arbitrary window of time that recurs.
+message RecurringTimeWindow {
+ // The window of the first recurrence.
+ TimeWindow window = 1;
+
+ // An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
+ // this window reccurs. They go on for the span of time between the start and
+ // end time.
+ //
+ // For example, to have something repeat every weekday, you'd use:
+ // `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR`
+ //
+ // To repeat some window daily (equivalent to the DailyMaintenanceWindow):
+ // `FREQ=DAILY`
+ //
+ // For the first weekend of every month:
+ // `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU`
+ //
+ // This specifies how frequently the window starts. Eg, if you wanted to have
+ // a 9-5 UTC-4 window every weekday, you'd use something like:
+ // ```
+ // start time = 2019-01-01T09:00:00-0400
+ // end time = 2019-01-01T17:00:00-0400
+ // recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
+ // ```
+ //
+ // Windows can span multiple days. Eg, to make the window encompass every
+ // weekend from midnight Saturday till the last minute of Sunday UTC:
+ // ```
+ // start time = 2019-01-05T00:00:00Z
+ // end time = 2019-01-07T23:59:00Z
+ // recurrence = FREQ=WEEKLY;BYDAY=SA
+ // ```
+ //
+ // Note the start and end time's specific dates are largely arbitrary except
+ // to specify duration of the window and when it first starts.
+ // The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
+ string recurrence = 2;
+}
+
+// Time window specified for daily maintenance operations.
+message DailyMaintenanceWindow {
+ // Time within the maintenance window to start the maintenance operations.
+ // Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ // format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
+ string start_time = 2;
+
+ // [Output only] Duration of the time window, automatically chosen to be
+ // smallest possible in the given scenario.
+ // Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
+ // format "PTnHnMnS".
+ string duration = 3;
+}
+
+// SetNodePoolManagementRequest sets the node management properties of a node
+// pool.
+message SetNodePoolManagementRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to update.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool to update.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // Required. NodeManagement configuration for the node pool.
+ NodeManagement management = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster, node pool id) of the node pool to set
+ // management properties. Specified in the format
+ // `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 7;
+}
+
+// SetNodePoolSizeRequest sets the size of a node pool.
+message SetNodePoolSizeRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to update.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool to update.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // Required. The desired node count for the pool.
+ int32 node_count = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster, node pool id) of the node pool to set
+ // size.
+ // Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 7;
+}
+
+// CompleteNodePoolUpgradeRequest sets the name of target node pool to complete
+// upgrade.
+message CompleteNodePoolUpgradeRequest {
+ // The name (project, location, cluster, node pool id) of the node pool to
+ // complete upgrade.
+ // Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 1;
+}
+
+// RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
+// NodePool upgrade. This will be an no-op if the last upgrade successfully
+// completed.
+message RollbackNodePoolUpgradeRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to rollback.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Deprecated. The name of the node pool to rollback.
+ // This field has been deprecated and replaced by the name field.
+ string node_pool_id = 4 [deprecated = true];
+
+ // The name (project, location, cluster, node pool id) of the node poll to
+ // rollback upgrade.
+ // Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
+ string name = 6;
+
+ // Option for rollback to ignore the PodDisruptionBudget.
+ // Default value is false.
+ bool respect_pdb = 7;
+}
+
+// ListNodePoolsResponse is the result of ListNodePoolsRequest.
+message ListNodePoolsResponse {
+ // A list of node pools for a cluster.
+ repeated NodePool node_pools = 1;
+}
+
+// ClusterAutoscaling contains global, per-cluster information
+// required by Cluster Autoscaler to automatically adjust
+// the size of the cluster and create/delete
+// node pools based on the current needs.
+message ClusterAutoscaling {
+ // Defines possible options for autoscaling_profile field.
+ enum AutoscalingProfile {
+ // No change to autoscaling configuration.
+ PROFILE_UNSPECIFIED = 0;
+
+ // Prioritize optimizing utilization of resources.
+ OPTIMIZE_UTILIZATION = 1;
+
+ // Use default (balanced) autoscaling configuration.
+ BALANCED = 2;
+ }
+
+ // Enables automatic node pool creation and deletion.
+ bool enable_node_autoprovisioning = 1;
+
+ // Contains global constraints regarding minimum and maximum
+ // amount of resources in the cluster.
+ repeated ResourceLimit resource_limits = 2;
+
+ // Defines autoscaling behaviour.
+ AutoscalingProfile autoscaling_profile = 3;
+
+ // AutoprovisioningNodePoolDefaults contains defaults for a node pool
+ // created by NAP.
+ AutoprovisioningNodePoolDefaults autoprovisioning_node_pool_defaults = 4;
+
+ // The list of Google Compute Engine
+ // [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+ // NodePool's nodes can be created by NAP.
+ repeated string autoprovisioning_locations = 5;
+}
+
+// AutoprovisioningNodePoolDefaults contains defaults for a node pool created
+// by NAP.
+message AutoprovisioningNodePoolDefaults {
+ // Scopes that are used by NAP when creating node pools.
+ repeated string oauth_scopes = 1;
+
+ // The Google Cloud Platform Service Account to be used by the node VMs.
+ string service_account = 2;
+
+ // Specifies the upgrade settings for NAP created node pools
+ NodePool.UpgradeSettings upgrade_settings = 3;
+
+ // Specifies the node management options for NAP created node-pools.
+ NodeManagement management = 4;
+
+ // Deprecated. Minimum CPU platform to be used for NAP created node pools.
+ // The instance may be scheduled on the specified or newer CPU platform.
+ // Applicable values are the friendly names of CPU platforms, such as
+ // minCpuPlatform: Intel Haswell or
+ // minCpuPlatform: Intel Sandy Bridge. For more
+ // information, read [how to specify min CPU
+ // platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform).
+ // This field is deprecated, min_cpu_platform should be specified using
+ // https://cloud.google.com/requested-min-cpu-platform label selector on the
+ // pod.
+ // To unset the min cpu platform field pass "automatic"
+ // as field value.
+ string min_cpu_platform = 5 [deprecated = true];
+
+ // Size of the disk attached to each node, specified in GB.
+ // The smallest allowed disk size is 10GB.
+ //
+ // If unspecified, the default disk size is 100GB.
+ int32 disk_size_gb = 6;
+
+ // Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or
+ // 'pd-balanced')
+ //
+ // If unspecified, the default disk type is 'pd-standard'
+ string disk_type = 7;
+
+ // Shielded Instance options.
+ ShieldedInstanceConfig shielded_instance_config = 8;
+
+ // The Customer Managed Encryption Key used to encrypt the boot disk attached
+ // to each node in the node pool. This should be of the form
+ // projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+ // For more information about protecting resources with Cloud KMS Keys please
+ // see:
+ // https://cloud.google.com/compute/docs/disks/customer-managed-encryption
+ string boot_disk_kms_key = 9;
+
+ // The image type to use for NAP created node.
+ string image_type = 10;
+}
+
+// Contains information about amount of some resource in the cluster.
+// For memory, value should be in GB.
+message ResourceLimit {
+ // Resource name "cpu", "memory" or gpu-specific string.
+ string resource_type = 1;
+
+ // Minimum amount of the resource in the cluster.
+ int64 minimum = 2;
+
+ // Maximum amount of the resource in the cluster.
+ int64 maximum = 3;
+}
+
+// NodePoolAutoscaling contains information required by cluster autoscaler to
+// adjust the size of the node pool to the current cluster usage.
+message NodePoolAutoscaling {
+ // Location policy specifies how zones are picked when scaling up the
+ // nodepool.
+ enum LocationPolicy {
+ // Not set.
+ LOCATION_POLICY_UNSPECIFIED = 0;
+
+ // BALANCED is a best effort policy that aims to balance the sizes of
+ // different zones.
+ BALANCED = 1;
+
+ // ANY policy picks zones that have the highest capacity available.
+ ANY = 2;
+ }
+
+ // Is autoscaling enabled for this node pool.
+ bool enabled = 1;
+
+ // Minimum number of nodes for one location in the NodePool. Must be >= 1 and
+ // <= max_node_count.
+ int32 min_node_count = 2;
+
+ // Maximum number of nodes for one location in the NodePool. Must be >=
+ // min_node_count. There has to be enough quota to scale up the cluster.
+ int32 max_node_count = 3;
+
+ // Can this node pool be deleted automatically.
+ bool autoprovisioned = 4;
+
+ // Location policy used when scaling up a nodepool.
+ LocationPolicy location_policy = 5;
+
+ // Minimum number of nodes in the node pool. Must be greater than 1 less than
+ // total_max_node_count.
+ // The total_*_node_count fields are mutually exclusive with the *_node_count
+ // fields.
+ int32 total_min_node_count = 6;
+
+ // Maximum number of nodes in the node pool. Must be greater than
+ // total_min_node_count. There has to be enough quota to scale up the cluster.
+ // The total_*_node_count fields are mutually exclusive with the *_node_count
+ // fields.
+ int32 total_max_node_count = 7;
+}
+
+// SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
+// Engine cluster, which will in turn set them for Google Compute Engine
+// resources used by that cluster
+message SetLabelsRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. The labels to set for that cluster.
+ map resource_labels = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The fingerprint of the previous set of labels for this resource,
+ // used to detect conflicts. The fingerprint is initially generated by
+ // Kubernetes Engine and changes after every request to modify or update
+ // labels. You must always provide an up-to-date fingerprint hash when
+ // updating or changing labels. Make a `get()` request to the
+ // resource to get the latest fingerprint.
+ string label_fingerprint = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster name) of the cluster to set labels.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 7;
+}
+
+// SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
+// a cluster.
+message SetLegacyAbacRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster to update.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. Whether ABAC authorization will be enabled in the cluster.
+ bool enabled = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster name) of the cluster to set legacy
+ // abac. Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 6;
+}
+
+// StartIPRotationRequest creates a new IP for the cluster and then performs
+// a node upgrade on each node pool to point to the new IP.
+message StartIPRotationRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // The name (project, location, cluster name) of the cluster to start IP
+ // rotation. Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 6;
+
+ // Whether to rotate credentials during IP rotation.
+ bool rotate_credentials = 7;
+}
+
+// CompleteIPRotationRequest moves the cluster master back into single-IP mode.
+message CompleteIPRotationRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // The name (project, location, cluster name) of the cluster to complete IP
+ // rotation. Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 7;
+}
+
+// AcceleratorConfig represents a Hardware Accelerator request.
+message AcceleratorConfig {
+ // The number of the accelerator cards exposed to an instance.
+ int64 accelerator_count = 1;
+
+ // The accelerator type resource name. List of supported accelerators
+ // [here](https://cloud.google.com/compute/docs/gpus)
+ string accelerator_type = 2;
+
+ // Size of partitions to create on the GPU. Valid values are described in the
+ // NVIDIA [mig user
+ // guide](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning).
+ string gpu_partition_size = 3;
+
+ // The configuration for GPU sharing options.
+ optional GPUSharingConfig gpu_sharing_config = 5;
+}
+
+// GPUSharingConfig represents the GPU sharing configuration for Hardware
+// Accelerators.
+message GPUSharingConfig {
+ // The type of GPU sharing strategy currently provided.
+ enum GPUSharingStrategy {
+ // Default value.
+ GPU_SHARING_STRATEGY_UNSPECIFIED = 0;
+
+ // GPUs are time-shared between containers.
+ TIME_SHARING = 1;
+ }
+
+ // The max number of containers that can share a physical GPU.
+ int64 max_shared_clients_per_gpu = 1;
+
+ // The type of GPU sharing strategy to enable on the GPU node.
+ optional GPUSharingStrategy gpu_sharing_strategy = 2;
+}
+
+// WorkloadMetadataConfig defines the metadata configuration to expose to
+// workloads on the node pool.
+message WorkloadMetadataConfig {
+ // Mode is the configuration for how to expose metadata to workloads running
+ // on the node.
+ enum Mode {
+ // Not set.
+ MODE_UNSPECIFIED = 0;
+
+ // Expose all Compute Engine metadata to pods.
+ GCE_METADATA = 1;
+
+ // Run the GKE Metadata Server on this node. The GKE Metadata Server exposes
+ // a metadata API to workloads that is compatible with the V1 Compute
+ // Metadata APIs exposed by the Compute Engine and App Engine Metadata
+ // Servers. This feature can only be enabled if Workload Identity is enabled
+ // at the cluster level.
+ GKE_METADATA = 2;
+ }
+
+ // Mode is the configuration for how to expose metadata to workloads running
+ // on the node pool.
+ Mode mode = 2;
+}
+
+// SetNetworkPolicyRequest enables/disables network policy for a cluster.
+message SetNetworkPolicyRequest {
+ // Deprecated. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ // This field has been deprecated and replaced by the name field.
+ string project_id = 1 [deprecated = true];
+
+ // Deprecated. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides. This field has been deprecated and replaced by the name
+ // field.
+ string zone = 2 [deprecated = true];
+
+ // Deprecated. The name of the cluster.
+ // This field has been deprecated and replaced by the name field.
+ string cluster_id = 3 [deprecated = true];
+
+ // Required. Configuration options for the NetworkPolicy feature.
+ NetworkPolicy network_policy = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster name) of the cluster to set networking
+ // policy. Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 6;
+}
+
+// SetMaintenancePolicyRequest sets the maintenance policy for a cluster.
+message SetMaintenancePolicyRequest {
+ // Required. The Google Developers Console [project ID or project
+ // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects).
+ string project_id = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The name of the Google Compute Engine
+ // [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+ // cluster resides.
+ string zone = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The name of the cluster to update.
+ string cluster_id = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The maintenance policy to be set for the cluster. An empty field
+ // clears the existing maintenance policy.
+ MaintenancePolicy maintenance_policy = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // The name (project, location, cluster name) of the cluster to set
+ // maintenance policy.
+ // Specified in the format `projects/*/locations/*/clusters/*`.
+ string name = 5;
+}
+
+// StatusCondition describes why a cluster or a node pool has a certain status
+// (e.g., ERROR or DEGRADED).
+message StatusCondition {
+ // Code for each condition
+ enum Code {
+ // UNKNOWN indicates a generic condition.
+ UNKNOWN = 0;
+
+ // GCE_STOCKOUT indicates that Google Compute Engine resources are
+ // temporarily unavailable.
+ GCE_STOCKOUT = 1;
+
+ // GKE_SERVICE_ACCOUNT_DELETED indicates that the user deleted their robot
+ // service account.
+ GKE_SERVICE_ACCOUNT_DELETED = 2;
+
+ // Google Compute Engine quota was exceeded.
+ GCE_QUOTA_EXCEEDED = 3;
+
+ // Cluster state was manually changed by an SRE due to a system logic error.
+ SET_BY_OPERATOR = 4;
+
+ // Unable to perform an encrypt operation against the CloudKMS key used for
+ // etcd level encryption.
+ CLOUD_KMS_KEY_ERROR = 7;
+
+ // Cluster CA is expiring soon.
+ CA_EXPIRING = 9;
+ }
+
+ // Machine-friendly representation of the condition
+ // Deprecated. Use canonical_code instead.
+ Code code = 1 [deprecated = true];
+
+ // Human-friendly representation of the condition
+ string message = 2;
+
+ // Canonical code of the condition.
+ google.rpc.Code canonical_code = 3;
+}
+
+// NetworkConfig reports the relative names of network & subnetwork.
+message NetworkConfig {
+ // Output only. The relative name of the Google Compute Engine
+ // [network][google.container.v1.NetworkConfig.network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
+ // to which the cluster is connected. Example:
+ // projects/my-project/global/networks/my-network
+ string network = 1;
+
+ // Output only. The relative name of the Google Compute Engine
+ // [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
+ // cluster is connected. Example:
+ // projects/my-project/regions/us-central1/subnetworks/my-subnet
+ string subnetwork = 2;
+
+ // Whether Intra-node visibility is enabled for this cluster.
+ // This makes same node pod to pod traffic visible for VPC network.
+ bool enable_intra_node_visibility = 5;
+
+ // Whether the cluster disables default in-node sNAT rules. In-node sNAT rules
+ // will be disabled when default_snat_status is disabled. When disabled is set
+ // to false, default IP masquerade rules will be applied to the nodes to
+ // prevent sNAT on cluster internal traffic.
+ DefaultSnatStatus default_snat_status = 7;
+
+ // Whether L4ILB Subsetting is enabled for this cluster.
+ bool enable_l4ilb_subsetting = 10;
+
+ // The desired datapath provider for this cluster. By default, uses the
+ // IPTables-based kube-proxy implementation.
+ DatapathProvider datapath_provider = 11;
+
+ // The desired state of IPv6 connectivity to Google Services.
+ // By default, no private IPv6 access to or from Google Services (all access
+ // will be via IPv4)
+ PrivateIPv6GoogleAccess private_ipv6_google_access = 12;
+
+ // DNSConfig contains clusterDNS config for this cluster.
+ DNSConfig dns_config = 13;
+
+ // ServiceExternalIPsConfig specifies if services with externalIPs field are
+ // blocked or not.
+ ServiceExternalIPsConfig service_external_ips_config = 15;
+
+ // GatewayAPIConfig contains the desired config of Gateway API on this
+ // cluster.
+ GatewayAPIConfig gateway_api_config = 16;
+}
+
+// GatewayAPIConfig contains the desired config of Gateway API on this cluster.
+message GatewayAPIConfig {
+ // Channel describes if/how Gateway API should be installed and implemented in
+ // a cluster.
+ enum Channel {
+ // Default value.
+ CHANNEL_UNSPECIFIED = 0;
+
+ // Gateway API support is disabled
+ CHANNEL_DISABLED = 1;
+
+ // Gateway API support is enabled, experimental CRDs are installed
+ CHANNEL_EXPERIMENTAL = 3;
+
+ // Gateway API support is enabled, standard CRDs are installed
+ CHANNEL_STANDARD = 4;
+ }
+
+ // The Gateway API release channel to use for Gateway API.
+ Channel channel = 1;
+}
+
+// Config to block services with externalIPs field.
+message ServiceExternalIPsConfig {
+ // Whether Services with ExternalIPs field are allowed or not.
+ bool enabled = 1;
+}
+
+// GetOpenIDConfigRequest gets the OIDC discovery document for the
+// cluster. See the OpenID Connect Discovery 1.0 specification for details.
+message GetOpenIDConfigRequest {
+ // The cluster (project, location, cluster name) to get the discovery document
+ // for. Specified in the format `projects/*/locations/*/clusters/*`.
+ string parent = 1;
+}
+
+// GetOpenIDConfigResponse is an OIDC discovery document for the cluster.
+// See the OpenID Connect Discovery 1.0 specification for details.
+message GetOpenIDConfigResponse {
+ // OIDC Issuer.
+ string issuer = 1;
+
+ // JSON Web Key uri.
+ string jwks_uri = 2;
+
+ // Supported response types.
+ repeated string response_types_supported = 3;
+
+ // Supported subject types.
+ repeated string subject_types_supported = 4;
+
+ // supported ID Token signing Algorithms.
+ repeated string id_token_signing_alg_values_supported = 5;
+
+ // Supported claims.
+ repeated string claims_supported = 6;
+
+ // Supported grant types.
+ repeated string grant_types = 7;
+}
+
+// GetJSONWebKeysRequest gets the public component of the keys used by the
+// cluster to sign token requests. This will be the jwks_uri for the discover
+// document returned by getOpenIDConfig. See the OpenID Connect
+// Discovery 1.0 specification for details.
+message GetJSONWebKeysRequest {
+ // The cluster (project, location, cluster name) to get keys for. Specified in
+ // the format `projects/*/locations/*/clusters/*`.
+ string parent = 1;
+}
+
+// Jwk is a JSON Web Key as specified in RFC 7517
+message Jwk {
+ // Key Type.
+ string kty = 1;
+
+ // Algorithm.
+ string alg = 2;
+
+ // Permitted uses for the public keys.
+ string use = 3;
+
+ // Key ID.
+ string kid = 4;
+
+ // Used for RSA keys.
+ string n = 5;
+
+ // Used for RSA keys.
+ string e = 6;
+
+ // Used for ECDSA keys.
+ string x = 7;
+
+ // Used for ECDSA keys.
+ string y = 8;
+
+ // Used for ECDSA keys.
+ string crv = 9;
+}
+
+// GetJSONWebKeysResponse is a valid JSON Web Key Set as specififed in rfc 7517
+message GetJSONWebKeysResponse {
+ // The public component of the keys used by the cluster to sign token
+ // requests.
+ repeated Jwk keys = 1;
+}
+
+// ReleaseChannel indicates which release channel a cluster is
+// subscribed to. Release channels are arranged in order of risk.
+//
+// When a cluster is subscribed to a release channel, Google maintains
+// both the master version and the node version. Node auto-upgrade
+// defaults to true and cannot be disabled.
+message ReleaseChannel {
+ // Possible values for 'channel'.
+ enum Channel {
+ // No channel specified.
+ UNSPECIFIED = 0;
+
+ // RAPID channel is offered on an early access basis for customers who want
+ // to test new releases.
+ //
+ // WARNING: Versions available in the RAPID Channel may be subject to
+ // unresolved issues with no known workaround and are not subject to any
+ // SLAs.
+ RAPID = 1;
+
+ // Clusters subscribed to REGULAR receive versions that are considered GA
+ // quality. REGULAR is intended for production users who want to take
+ // advantage of new features.
+ REGULAR = 2;
+
+ // Clusters subscribed to STABLE receive versions that are known to be
+ // stable and reliable in production.
+ STABLE = 3;
+ }
+
+ // channel specifies which release channel the cluster is subscribed to.
+ Channel channel = 1;
+}
+
+// Configuration for fine-grained cost management feature.
+message CostManagementConfig {
+ // Whether the feature is enabled or not.
+ bool enabled = 1;
+}
+
+// IntraNodeVisibilityConfig contains the desired config of the intra-node
+// visibility on this cluster.
+message IntraNodeVisibilityConfig {
+ // Enables intra node visibility for this cluster.
+ bool enabled = 1;
+}
+
+// ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer
+// subsetting on this cluster.
+message ILBSubsettingConfig {
+ // Enables l4 ILB subsetting for this cluster.
+ bool enabled = 1;
+}
+
+// DNSConfig contains the desired set of options for configuring clusterDNS.
+message DNSConfig {
+ // Provider lists the various in-cluster DNS providers.
+ enum Provider {
+ // Default value
+ PROVIDER_UNSPECIFIED = 0;
+
+ // Use GKE default DNS provider(kube-dns) for DNS resolution.
+ PLATFORM_DEFAULT = 1;
+
+ // Use CloudDNS for DNS resolution.
+ CLOUD_DNS = 2;
+ }
+
+ // DNSScope lists the various scopes of access to cluster DNS records.
+ enum DNSScope {
+ // Default value, will be inferred as cluster scope.
+ DNS_SCOPE_UNSPECIFIED = 0;
+
+ // DNS records are accessible from within the VPC.
+ VPC_SCOPE = 2;
+ }
+
+ // cluster_dns indicates which in-cluster DNS provider should be used.
+ Provider cluster_dns = 1;
+
+ // cluster_dns_scope indicates the scope of access to cluster DNS records.
+ DNSScope cluster_dns_scope = 2;
+
+ // cluster_dns_domain is the suffix used for all cluster service records.
+ string cluster_dns_domain = 3;
+}
+
+// Constraints applied to pods.
+message MaxPodsConstraint {
+ // Constraint enforced on the max num of pods per node.
+ int64 max_pods_per_node = 1;
+}
+
+// Configuration for the use of Kubernetes Service Accounts in GCP IAM
+// policies.
+message WorkloadIdentityConfig {
+ // The workload pool to attach all Kubernetes service accounts to.
+ string workload_pool = 2;
+}
+
+// IdentityServiceConfig is configuration for Identity Service which allows
+// customers to use external identity providers with the K8S API
+message IdentityServiceConfig {
+ // Whether to enable the Identity Service component
+ bool enabled = 1;
+}
+
+// Configuration for issuance of mTLS keys and certificates to Kubernetes pods.
+message MeshCertificates {
+ // enable_certificates controls issuance of workload mTLS certificates.
+ //
+ // If set, the GKE Workload Identity Certificates controller and node agent
+ // will be deployed in the cluster, which can then be configured by creating a
+ // WorkloadCertificateConfig Custom Resource.
+ //
+ // Requires Workload Identity
+ // ([workload_pool][google.container.v1.WorkloadIdentityConfig.workload_pool]
+ // must be non-empty).
+ google.protobuf.BoolValue enable_certificates = 1;
+}
+
+// Configuration of etcd encryption.
+message DatabaseEncryption {
+ // State of etcd encryption.
+ enum State {
+ // Should never be set
+ UNKNOWN = 0;
+
+ // Secrets in etcd are encrypted.
+ ENCRYPTED = 1;
+
+ // Secrets in etcd are stored in plain text (at etcd level) - this is
+ // unrelated to Compute Engine level full disk encryption.
+ DECRYPTED = 2;
+ }
+
+ // Denotes the state of etcd encryption.
+ State state = 2;
+
+ // Name of CloudKMS key to use for the encryption of secrets in etcd.
+ // Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
+ string key_name = 1;
+}
+
+// ListUsableSubnetworksRequest requests the list of usable subnetworks
+// available to a user for creating clusters.
+message ListUsableSubnetworksRequest {
+ // The parent project where subnetworks are usable.
+ // Specified in the format `projects/*`.
+ string parent = 1;
+
+ // Filtering currently only supports equality on the networkProjectId and must
+ // be in the form: "networkProjectId=[PROJECTID]", where `networkProjectId`
+ // is the project which owns the listed subnetworks. This defaults to the
+ // parent project ID.
+ string filter = 2;
+
+ // The max number of results per page that should be returned. If the number
+ // of available results is larger than `page_size`, a `next_page_token` is
+ // returned which can be used to get the next page of results in subsequent
+ // requests. Acceptable values are 0 to 500, inclusive. (Default: 500)
+ int32 page_size = 3;
+
+ // Specifies a page token to use. Set this to the nextPageToken returned by
+ // previous list requests to get the next page of results.
+ string page_token = 4;
+}
+
+// ListUsableSubnetworksResponse is the response of
+// ListUsableSubnetworksRequest.
+message ListUsableSubnetworksResponse {
+ // A list of usable subnetworks in the specified network project.
+ repeated UsableSubnetwork subnetworks = 1;
+
+ // This token allows you to get the next page of results for list requests.
+ // If the number of results is larger than `page_size`, use the
+ // `next_page_token` as a value for the query parameter `page_token` in the
+ // next request. The value will become empty when there are no more pages.
+ string next_page_token = 2;
+}
+
+// Secondary IP range of a usable subnetwork.
+message UsableSubnetworkSecondaryRange {
+ // Status shows the current usage of a secondary IP range.
+ enum Status {
+ // UNKNOWN is the zero value of the Status enum. It's not a valid status.
+ UNKNOWN = 0;
+
+ // UNUSED denotes that this range is unclaimed by any cluster.
+ UNUSED = 1;
+
+ // IN_USE_SERVICE denotes that this range is claimed by a cluster for
+ // services. It cannot be used for other clusters.
+ IN_USE_SERVICE = 2;
+
+ // IN_USE_SHAREABLE_POD denotes this range was created by the network admin
+ // and is currently claimed by a cluster for pods. It can only be used by
+ // other clusters as a pod range.
+ IN_USE_SHAREABLE_POD = 3;
+
+ // IN_USE_MANAGED_POD denotes this range was created by GKE and is claimed
+ // for pods. It cannot be used for other clusters.
+ IN_USE_MANAGED_POD = 4;
+ }
+
+ // The name associated with this subnetwork secondary range, used when adding
+ // an alias IP range to a VM instance.
+ string range_name = 1;
+
+ // The range of IP addresses belonging to this subnetwork secondary range.
+ string ip_cidr_range = 2;
+
+ // This field is to determine the status of the secondary range programmably.
+ Status status = 3;
+}
+
+// UsableSubnetwork resource returns the subnetwork name, its associated network
+// and the primary CIDR range.
+message UsableSubnetwork {
+ // Subnetwork Name.
+ // Example: projects/my-project/regions/us-central1/subnetworks/my-subnet
+ string subnetwork = 1;
+
+ // Network Name.
+ // Example: projects/my-project/global/networks/my-network
+ string network = 2;
+
+ // The range of internal addresses that are owned by this subnetwork.
+ string ip_cidr_range = 3;
+
+ // Secondary IP ranges.
+ repeated UsableSubnetworkSecondaryRange secondary_ip_ranges = 4;
+
+ // A human readable status message representing the reasons for cases where
+ // the caller cannot use the secondary ranges under the subnet. For example if
+ // the secondary_ip_ranges is empty due to a permission issue, an insufficient
+ // permission message will be given by status_message.
+ string status_message = 5;
+}
+
+// Configuration for exporting cluster resource usages.
+message ResourceUsageExportConfig {
+ // Parameters for using BigQuery as the destination of resource usage export.
+ message BigQueryDestination {
+ // The ID of a BigQuery Dataset.
+ string dataset_id = 1;
+ }
+
+ // Parameters for controlling consumption metering.
+ message ConsumptionMeteringConfig {
+ // Whether to enable consumption metering for this cluster. If enabled, a
+ // second BigQuery table will be created to hold resource consumption
+ // records.
+ bool enabled = 1;
+ }
+
+ // Configuration to use BigQuery as usage export destination.
+ BigQueryDestination bigquery_destination = 1;
+
+ // Whether to enable network egress metering for this cluster. If enabled, a
+ // daemonset will be created in the cluster to meter network egress traffic.
+ bool enable_network_egress_metering = 2;
+
+ // Configuration to enable resource consumption metering.
+ ConsumptionMeteringConfig consumption_metering_config = 3;
+}
+
+// VerticalPodAutoscaling contains global, per-cluster information
+// required by Vertical Pod Autoscaler to automatically adjust
+// the resources of pods controlled by it.
+message VerticalPodAutoscaling {
+ // Enables vertical pod autoscaling.
+ bool enabled = 1;
+}
+
+// DefaultSnatStatus contains the desired state of whether default sNAT should
+// be disabled on the cluster.
+message DefaultSnatStatus {
+ // Disables cluster default sNAT rules.
+ bool disabled = 1;
+}
+
+// Configuration of Shielded Nodes feature.
+message ShieldedNodes {
+ // Whether Shielded Nodes features are enabled on all nodes in this cluster.
+ bool enabled = 1;
+}
+
+// Configuration of gVNIC feature.
+message VirtualNIC {
+ // Whether gVNIC features are enabled in the node pool.
+ bool enabled = 1;
+}
+
+// PrivateIPv6GoogleAccess controls whether and how the pods can communicate
+// with Google Services through gRPC over IPv6.
+enum PrivateIPv6GoogleAccess {
+ // Default value. Same as DISABLED
+ PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0;
+
+ // No private access to or from Google Services
+ PRIVATE_IPV6_GOOGLE_ACCESS_DISABLED = 1;
+
+ // Enables private IPv6 access to Google Services from GKE
+ PRIVATE_IPV6_GOOGLE_ACCESS_TO_GOOGLE = 2;
+
+ // Enables priate IPv6 access to and from Google Services
+ PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3;
+}
+
+// NotificationConfig is the configuration of notifications.
+message NotificationConfig {
+ // Types of notifications currently supported. Can be used to filter what
+ // notifications are sent.
+ enum EventType {
+ // Not set, will be ignored.
+ EVENT_TYPE_UNSPECIFIED = 0;
+
+ // Corresponds with UpgradeAvailableEvent.
+ UPGRADE_AVAILABLE_EVENT = 1;
+
+ // Corresponds with UpgradeEvent.
+ UPGRADE_EVENT = 2;
+
+ // Corresponds with SecurityBulletinEvent.
+ SECURITY_BULLETIN_EVENT = 3;
+ }
+
+ // Pub/Sub specific notification config.
+ message PubSub {
+ // Enable notifications for Pub/Sub.
+ bool enabled = 1;
+
+ // The desired Pub/Sub topic to which notifications will be
+ // sent by GKE. Format is `projects/{project}/topics/{topic}`.
+ string topic = 2 [(google.api.resource_reference) = {
+ type: "pubsub.googleapis.com/Topic"
+ }];
+
+ // Allows filtering to one or more specific event types. If no filter is
+ // specified, or if a filter is specified with no event types, all event
+ // types will be sent
+ Filter filter = 3;
+ }
+
+ // Allows filtering to one or more specific event types. If event types are
+ // present, those and only those event types will be transmitted to the
+ // cluster. Other types will be skipped. If no filter is specified, or no
+ // event types are present, all event types will be sent
+ message Filter {
+ // Event types to allowlist.
+ repeated EventType event_type = 1;
+ }
+
+ // Notification config for Pub/Sub.
+ PubSub pubsub = 1;
+}
+
+// ConfidentialNodes is configuration for the confidential nodes feature, which
+// makes nodes run on confidential VMs.
+message ConfidentialNodes {
+ // Whether Confidential Nodes feature is enabled.
+ bool enabled = 1;
+}
+
+// UpgradeResourceType is the resource type that is upgrading. It is used
+// in upgrade notifications.
+enum UpgradeResourceType {
+ // Default value. This shouldn't be used.
+ UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0;
+
+ // Master / control plane
+ MASTER = 1;
+
+ // Node pool
+ NODE_POOL = 2;
+}
+
+// UpgradeEvent is a notification sent to customers by the cluster server when
+// a resource is upgrading.
+message UpgradeEvent {
+ // The resource type that is upgrading.
+ UpgradeResourceType resource_type = 1;
+
+ // The operation associated with this upgrade.
+ string operation = 2;
+
+ // The time when the operation was started.
+ google.protobuf.Timestamp operation_start_time = 3;
+
+ // The current version before the upgrade.
+ string current_version = 4;
+
+ // The target version for the upgrade.
+ string target_version = 5;
+
+ // Optional relative path to the resource. For example in node pool upgrades,
+ // the relative path of the node pool.
+ string resource = 6;
+}
+
+// UpgradeAvailableEvent is a notification sent to customers when a new
+// available version is released.
+message UpgradeAvailableEvent {
+ // The release version available for upgrade.
+ string version = 1;
+
+ // The resource type of the release version.
+ UpgradeResourceType resource_type = 2;
+
+ // The release channel of the version. If empty, it means a non-channel
+ // release.
+ ReleaseChannel release_channel = 3;
+
+ // Optional relative path to the resource. For example, the relative path of
+ // the node pool.
+ string resource = 4;
+}
+
+// SecurityBulletinEvent is a notification sent to customers when a security
+// bulletin has been posted that they are vulnerable to.
+message SecurityBulletinEvent {
+ // The resource type (node/control plane) that has the vulnerability. Multiple
+ // notifications (1 notification per resource type) will be sent for a
+ // vulnerability that affects > 1 resource type.
+ string resource_type_affected = 1;
+
+ // The ID of the bulletin corresponding to the vulnerability.
+ string bulletin_id = 2;
+
+ // The CVEs associated with this bulletin.
+ repeated string cve_ids = 3;
+
+ // The severity of this bulletin as it relates to GKE.
+ string severity = 4;
+
+ // The URI link to the bulletin on the website for more information.
+ string bulletin_uri = 5;
+
+ // A brief description of the bulletin. See the bulletin pointed to by the
+ // bulletin_uri field for an expanded description.
+ string brief_description = 6;
+
+ // The GKE minor versions affected by this vulnerability.
+ repeated string affected_supported_minors = 7;
+
+ // The GKE versions where this vulnerability is patched.
+ repeated string patched_versions = 8;
+
+ // This represents a version selected from the patched_versions field that
+ // the cluster receiving this notification should most likely want to upgrade
+ // to based on its current version. Note that if this notification is being
+ // received by a given cluster, it means that this version is currently
+ // available as an upgrade target in that cluster's location.
+ string suggested_upgrade_target = 9;
+
+ // If this field is specified, it means there are manual steps that the user
+ // must take to make their clusters safe.
+ bool manual_steps_required = 10;
+}
+
+// Autopilot is the configuration for Autopilot settings on the cluster.
+message Autopilot {
+ // Enable Autopilot
+ bool enabled = 1;
+}
+
+// LoggingConfig is cluster logging configuration.
+message LoggingConfig {
+ // Logging components configuration
+ LoggingComponentConfig component_config = 1;
+}
+
+// LoggingComponentConfig is cluster logging component configuration.
+message LoggingComponentConfig {
+ // GKE components exposing logs
+ enum Component {
+ // Default value. This shouldn't be used.
+ COMPONENT_UNSPECIFIED = 0;
+
+ // system components
+ SYSTEM_COMPONENTS = 1;
+
+ // workloads
+ WORKLOADS = 2;
+
+ // kube-apiserver
+ APISERVER = 3;
+
+ // kube-scheduler
+ SCHEDULER = 4;
+
+ // kube-controller-manager
+ CONTROLLER_MANAGER = 5;
+ }
+
+ // Select components to collect logs. An empty set would disable all logging.
+ repeated Component enable_components = 1;
+}
+
+// MonitoringConfig is cluster monitoring configuration.
+message MonitoringConfig {
+ // Monitoring components configuration
+ MonitoringComponentConfig component_config = 1;
+
+ // Enable Google Cloud Managed Service for Prometheus
+ // in the cluster.
+ ManagedPrometheusConfig managed_prometheus_config = 2;
+}
+
+// NodePoolLoggingConfig specifies logging configuration for nodepools.
+message NodePoolLoggingConfig {
+ // Logging variant configuration.
+ LoggingVariantConfig variant_config = 1;
+}
+
+// LoggingVariantConfig specifies the behaviour of the logging component.
+message LoggingVariantConfig {
+ // Logging component variants.
+ enum Variant {
+ // Default value. This shouldn't be used.
+ VARIANT_UNSPECIFIED = 0;
+
+ // default logging variant.
+ DEFAULT = 1;
+
+ // maximum logging throughput variant.
+ MAX_THROUGHPUT = 2;
+ }
+
+ // Logging variant deployed on nodes.
+ Variant variant = 1;
+}
+
+// MonitoringComponentConfig is cluster monitoring component configuration.
+message MonitoringComponentConfig {
+ // GKE components exposing metrics
+ enum Component {
+ // Default value. This shouldn't be used.
+ COMPONENT_UNSPECIFIED = 0;
+
+ // system components
+ SYSTEM_COMPONENTS = 1;
+
+ // kube-apiserver
+ APISERVER = 3;
+
+ // kube-scheduler
+ SCHEDULER = 4;
+
+ // kube-controller-manager
+ CONTROLLER_MANAGER = 5;
+ }
+
+ // Select components to collect metrics. An empty set would disable all
+ // monitoring.
+ repeated Component enable_components = 1;
+}
+
+// The datapath provider selects the implementation of the Kubernetes networking
+// model for service resolution and network policy enforcement.
+enum DatapathProvider {
+ // Default value.
+ DATAPATH_PROVIDER_UNSPECIFIED = 0;
+
+ // Use the IPTables implementation based on kube-proxy.
+ LEGACY_DATAPATH = 1;
+
+ // Use the eBPF based GKE Dataplane V2 with additional features. See the [GKE
+ // Dataplane V2
+ // documentation](https://cloud.google.com/kubernetes-engine/docs/how-to/dataplane-v2)
+ // for more.
+ ADVANCED_DATAPATH = 2;
+}
+
+// Strategy used for node pool update.
+enum NodePoolUpdateStrategy {
+ // Default value.
+ NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0;
+
+ // blue-green upgrade.
+ BLUE_GREEN = 2;
+
+ // SURGE is the traditional way of upgrade a node pool.
+ // max_surge and max_unavailable determines the level of upgrade parallelism.
+ SURGE = 3;
+}
+
+// ManagedPrometheusConfig defines the configuration for
+// Google Cloud Managed Service for Prometheus.
+message ManagedPrometheusConfig {
+ // Enable Managed Collection.
+ bool enabled = 1;
+}
+
+// Possible values for IP stack type
+enum StackType {
+ // Default value, will be defaulted as IPV4 only
+ STACK_TYPE_UNSPECIFIED = 0;
+
+ // Cluster is IPV4 only
+ IPV4 = 1;
+
+ // Cluster can use both IPv4 and IPv6
+ IPV4_IPV6 = 2;
+}
+
+// Possible values for IPv6 access type
+enum IPv6AccessType {
+ // Default value, will be defaulted as type external.
+ IPV6_ACCESS_TYPE_UNSPECIFIED = 0;
+
+ // Access type internal (all v6 addresses are internal IPs)
+ INTERNAL = 1;
+
+ // Access type external (all v6 addresses are external IPs)
+ EXTERNAL = 2;
+}
diff --git a/packages/google-container/protos/protos.d.ts b/packages/google-container/protos/protos.d.ts
new file mode 100644
index 00000000000..f4da62cc9f7
--- /dev/null
+++ b/packages/google-container/protos/protos.d.ts
@@ -0,0 +1,23604 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+import type {protobuf as $protobuf} from "google-gax";
+import Long = require("long");
+/** Namespace google. */
+export namespace google {
+
+ /** Namespace container. */
+ namespace container {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents a ClusterManager */
+ class ClusterManager extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new ClusterManager 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 ClusterManager 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): ClusterManager;
+
+ /**
+ * Calls ListClusters.
+ * @param request ListClustersRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListClustersResponse
+ */
+ public listClusters(request: google.container.v1.IListClustersRequest, callback: google.container.v1.ClusterManager.ListClustersCallback): void;
+
+ /**
+ * Calls ListClusters.
+ * @param request ListClustersRequest message or plain object
+ * @returns Promise
+ */
+ public listClusters(request: google.container.v1.IListClustersRequest): Promise;
+
+ /**
+ * Calls GetCluster.
+ * @param request GetClusterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Cluster
+ */
+ public getCluster(request: google.container.v1.IGetClusterRequest, callback: google.container.v1.ClusterManager.GetClusterCallback): void;
+
+ /**
+ * Calls GetCluster.
+ * @param request GetClusterRequest message or plain object
+ * @returns Promise
+ */
+ public getCluster(request: google.container.v1.IGetClusterRequest): Promise;
+
+ /**
+ * Calls CreateCluster.
+ * @param request CreateClusterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createCluster(request: google.container.v1.ICreateClusterRequest, callback: google.container.v1.ClusterManager.CreateClusterCallback): void;
+
+ /**
+ * Calls CreateCluster.
+ * @param request CreateClusterRequest message or plain object
+ * @returns Promise
+ */
+ public createCluster(request: google.container.v1.ICreateClusterRequest): Promise;
+
+ /**
+ * Calls UpdateCluster.
+ * @param request UpdateClusterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateCluster(request: google.container.v1.IUpdateClusterRequest, callback: google.container.v1.ClusterManager.UpdateClusterCallback): void;
+
+ /**
+ * Calls UpdateCluster.
+ * @param request UpdateClusterRequest message or plain object
+ * @returns Promise
+ */
+ public updateCluster(request: google.container.v1.IUpdateClusterRequest): Promise;
+
+ /**
+ * Calls UpdateNodePool.
+ * @param request UpdateNodePoolRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateNodePool(request: google.container.v1.IUpdateNodePoolRequest, callback: google.container.v1.ClusterManager.UpdateNodePoolCallback): void;
+
+ /**
+ * Calls UpdateNodePool.
+ * @param request UpdateNodePoolRequest message or plain object
+ * @returns Promise
+ */
+ public updateNodePool(request: google.container.v1.IUpdateNodePoolRequest): Promise;
+
+ /**
+ * Calls SetNodePoolAutoscaling.
+ * @param request SetNodePoolAutoscalingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setNodePoolAutoscaling(request: google.container.v1.ISetNodePoolAutoscalingRequest, callback: google.container.v1.ClusterManager.SetNodePoolAutoscalingCallback): void;
+
+ /**
+ * Calls SetNodePoolAutoscaling.
+ * @param request SetNodePoolAutoscalingRequest message or plain object
+ * @returns Promise
+ */
+ public setNodePoolAutoscaling(request: google.container.v1.ISetNodePoolAutoscalingRequest): Promise;
+
+ /**
+ * Calls SetLoggingService.
+ * @param request SetLoggingServiceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setLoggingService(request: google.container.v1.ISetLoggingServiceRequest, callback: google.container.v1.ClusterManager.SetLoggingServiceCallback): void;
+
+ /**
+ * Calls SetLoggingService.
+ * @param request SetLoggingServiceRequest message or plain object
+ * @returns Promise
+ */
+ public setLoggingService(request: google.container.v1.ISetLoggingServiceRequest): Promise;
+
+ /**
+ * Calls SetMonitoringService.
+ * @param request SetMonitoringServiceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setMonitoringService(request: google.container.v1.ISetMonitoringServiceRequest, callback: google.container.v1.ClusterManager.SetMonitoringServiceCallback): void;
+
+ /**
+ * Calls SetMonitoringService.
+ * @param request SetMonitoringServiceRequest message or plain object
+ * @returns Promise
+ */
+ public setMonitoringService(request: google.container.v1.ISetMonitoringServiceRequest): Promise;
+
+ /**
+ * Calls SetAddonsConfig.
+ * @param request SetAddonsConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setAddonsConfig(request: google.container.v1.ISetAddonsConfigRequest, callback: google.container.v1.ClusterManager.SetAddonsConfigCallback): void;
+
+ /**
+ * Calls SetAddonsConfig.
+ * @param request SetAddonsConfigRequest message or plain object
+ * @returns Promise
+ */
+ public setAddonsConfig(request: google.container.v1.ISetAddonsConfigRequest): Promise;
+
+ /**
+ * Calls SetLocations.
+ * @param request SetLocationsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setLocations(request: google.container.v1.ISetLocationsRequest, callback: google.container.v1.ClusterManager.SetLocationsCallback): void;
+
+ /**
+ * Calls SetLocations.
+ * @param request SetLocationsRequest message or plain object
+ * @returns Promise
+ */
+ public setLocations(request: google.container.v1.ISetLocationsRequest): Promise;
+
+ /**
+ * Calls UpdateMaster.
+ * @param request UpdateMasterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public updateMaster(request: google.container.v1.IUpdateMasterRequest, callback: google.container.v1.ClusterManager.UpdateMasterCallback): void;
+
+ /**
+ * Calls UpdateMaster.
+ * @param request UpdateMasterRequest message or plain object
+ * @returns Promise
+ */
+ public updateMaster(request: google.container.v1.IUpdateMasterRequest): Promise;
+
+ /**
+ * Calls SetMasterAuth.
+ * @param request SetMasterAuthRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setMasterAuth(request: google.container.v1.ISetMasterAuthRequest, callback: google.container.v1.ClusterManager.SetMasterAuthCallback): void;
+
+ /**
+ * Calls SetMasterAuth.
+ * @param request SetMasterAuthRequest message or plain object
+ * @returns Promise
+ */
+ public setMasterAuth(request: google.container.v1.ISetMasterAuthRequest): Promise;
+
+ /**
+ * Calls DeleteCluster.
+ * @param request DeleteClusterRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteCluster(request: google.container.v1.IDeleteClusterRequest, callback: google.container.v1.ClusterManager.DeleteClusterCallback): void;
+
+ /**
+ * Calls DeleteCluster.
+ * @param request DeleteClusterRequest message or plain object
+ * @returns Promise
+ */
+ public deleteCluster(request: google.container.v1.IDeleteClusterRequest): Promise;
+
+ /**
+ * Calls ListOperations.
+ * @param request ListOperationsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListOperationsResponse
+ */
+ public listOperations(request: google.container.v1.IListOperationsRequest, callback: google.container.v1.ClusterManager.ListOperationsCallback): void;
+
+ /**
+ * Calls ListOperations.
+ * @param request ListOperationsRequest message or plain object
+ * @returns Promise
+ */
+ public listOperations(request: google.container.v1.IListOperationsRequest): Promise;
+
+ /**
+ * Calls GetOperation.
+ * @param request GetOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public getOperation(request: google.container.v1.IGetOperationRequest, callback: google.container.v1.ClusterManager.GetOperationCallback): void;
+
+ /**
+ * Calls GetOperation.
+ * @param request GetOperationRequest message or plain object
+ * @returns Promise
+ */
+ public getOperation(request: google.container.v1.IGetOperationRequest): Promise;
+
+ /**
+ * Calls CancelOperation.
+ * @param request CancelOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public cancelOperation(request: google.container.v1.ICancelOperationRequest, callback: google.container.v1.ClusterManager.CancelOperationCallback): void;
+
+ /**
+ * Calls CancelOperation.
+ * @param request CancelOperationRequest message or plain object
+ * @returns Promise
+ */
+ public cancelOperation(request: google.container.v1.ICancelOperationRequest): Promise;
+
+ /**
+ * Calls GetServerConfig.
+ * @param request GetServerConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ServerConfig
+ */
+ public getServerConfig(request: google.container.v1.IGetServerConfigRequest, callback: google.container.v1.ClusterManager.GetServerConfigCallback): void;
+
+ /**
+ * Calls GetServerConfig.
+ * @param request GetServerConfigRequest message or plain object
+ * @returns Promise
+ */
+ public getServerConfig(request: google.container.v1.IGetServerConfigRequest): Promise;
+
+ /**
+ * Calls GetJSONWebKeys.
+ * @param request GetJSONWebKeysRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GetJSONWebKeysResponse
+ */
+ public getJSONWebKeys(request: google.container.v1.IGetJSONWebKeysRequest, callback: google.container.v1.ClusterManager.GetJSONWebKeysCallback): void;
+
+ /**
+ * Calls GetJSONWebKeys.
+ * @param request GetJSONWebKeysRequest message or plain object
+ * @returns Promise
+ */
+ public getJSONWebKeys(request: google.container.v1.IGetJSONWebKeysRequest): Promise;
+
+ /**
+ * Calls ListNodePools.
+ * @param request ListNodePoolsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNodePoolsResponse
+ */
+ public listNodePools(request: google.container.v1.IListNodePoolsRequest, callback: google.container.v1.ClusterManager.ListNodePoolsCallback): void;
+
+ /**
+ * Calls ListNodePools.
+ * @param request ListNodePoolsRequest message or plain object
+ * @returns Promise
+ */
+ public listNodePools(request: google.container.v1.IListNodePoolsRequest): Promise;
+
+ /**
+ * Calls GetNodePool.
+ * @param request GetNodePoolRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NodePool
+ */
+ public getNodePool(request: google.container.v1.IGetNodePoolRequest, callback: google.container.v1.ClusterManager.GetNodePoolCallback): void;
+
+ /**
+ * Calls GetNodePool.
+ * @param request GetNodePoolRequest message or plain object
+ * @returns Promise
+ */
+ public getNodePool(request: google.container.v1.IGetNodePoolRequest): Promise;
+
+ /**
+ * Calls CreateNodePool.
+ * @param request CreateNodePoolRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public createNodePool(request: google.container.v1.ICreateNodePoolRequest, callback: google.container.v1.ClusterManager.CreateNodePoolCallback): void;
+
+ /**
+ * Calls CreateNodePool.
+ * @param request CreateNodePoolRequest message or plain object
+ * @returns Promise
+ */
+ public createNodePool(request: google.container.v1.ICreateNodePoolRequest): Promise;
+
+ /**
+ * Calls DeleteNodePool.
+ * @param request DeleteNodePoolRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public deleteNodePool(request: google.container.v1.IDeleteNodePoolRequest, callback: google.container.v1.ClusterManager.DeleteNodePoolCallback): void;
+
+ /**
+ * Calls DeleteNodePool.
+ * @param request DeleteNodePoolRequest message or plain object
+ * @returns Promise
+ */
+ public deleteNodePool(request: google.container.v1.IDeleteNodePoolRequest): Promise;
+
+ /**
+ * Calls CompleteNodePoolUpgrade.
+ * @param request CompleteNodePoolUpgradeRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public completeNodePoolUpgrade(request: google.container.v1.ICompleteNodePoolUpgradeRequest, callback: google.container.v1.ClusterManager.CompleteNodePoolUpgradeCallback): void;
+
+ /**
+ * Calls CompleteNodePoolUpgrade.
+ * @param request CompleteNodePoolUpgradeRequest message or plain object
+ * @returns Promise
+ */
+ public completeNodePoolUpgrade(request: google.container.v1.ICompleteNodePoolUpgradeRequest): Promise;
+
+ /**
+ * Calls RollbackNodePoolUpgrade.
+ * @param request RollbackNodePoolUpgradeRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public rollbackNodePoolUpgrade(request: google.container.v1.IRollbackNodePoolUpgradeRequest, callback: google.container.v1.ClusterManager.RollbackNodePoolUpgradeCallback): void;
+
+ /**
+ * Calls RollbackNodePoolUpgrade.
+ * @param request RollbackNodePoolUpgradeRequest message or plain object
+ * @returns Promise
+ */
+ public rollbackNodePoolUpgrade(request: google.container.v1.IRollbackNodePoolUpgradeRequest): Promise;
+
+ /**
+ * Calls SetNodePoolManagement.
+ * @param request SetNodePoolManagementRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setNodePoolManagement(request: google.container.v1.ISetNodePoolManagementRequest, callback: google.container.v1.ClusterManager.SetNodePoolManagementCallback): void;
+
+ /**
+ * Calls SetNodePoolManagement.
+ * @param request SetNodePoolManagementRequest message or plain object
+ * @returns Promise
+ */
+ public setNodePoolManagement(request: google.container.v1.ISetNodePoolManagementRequest): Promise;
+
+ /**
+ * Calls SetLabels.
+ * @param request SetLabelsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setLabels(request: google.container.v1.ISetLabelsRequest, callback: google.container.v1.ClusterManager.SetLabelsCallback): void;
+
+ /**
+ * Calls SetLabels.
+ * @param request SetLabelsRequest message or plain object
+ * @returns Promise
+ */
+ public setLabels(request: google.container.v1.ISetLabelsRequest): Promise;
+
+ /**
+ * Calls SetLegacyAbac.
+ * @param request SetLegacyAbacRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setLegacyAbac(request: google.container.v1.ISetLegacyAbacRequest, callback: google.container.v1.ClusterManager.SetLegacyAbacCallback): void;
+
+ /**
+ * Calls SetLegacyAbac.
+ * @param request SetLegacyAbacRequest message or plain object
+ * @returns Promise
+ */
+ public setLegacyAbac(request: google.container.v1.ISetLegacyAbacRequest): Promise;
+
+ /**
+ * Calls StartIPRotation.
+ * @param request StartIPRotationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public startIPRotation(request: google.container.v1.IStartIPRotationRequest, callback: google.container.v1.ClusterManager.StartIPRotationCallback): void;
+
+ /**
+ * Calls StartIPRotation.
+ * @param request StartIPRotationRequest message or plain object
+ * @returns Promise
+ */
+ public startIPRotation(request: google.container.v1.IStartIPRotationRequest): Promise;
+
+ /**
+ * Calls CompleteIPRotation.
+ * @param request CompleteIPRotationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public completeIPRotation(request: google.container.v1.ICompleteIPRotationRequest, callback: google.container.v1.ClusterManager.CompleteIPRotationCallback): void;
+
+ /**
+ * Calls CompleteIPRotation.
+ * @param request CompleteIPRotationRequest message or plain object
+ * @returns Promise
+ */
+ public completeIPRotation(request: google.container.v1.ICompleteIPRotationRequest): Promise;
+
+ /**
+ * Calls SetNodePoolSize.
+ * @param request SetNodePoolSizeRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setNodePoolSize(request: google.container.v1.ISetNodePoolSizeRequest, callback: google.container.v1.ClusterManager.SetNodePoolSizeCallback): void;
+
+ /**
+ * Calls SetNodePoolSize.
+ * @param request SetNodePoolSizeRequest message or plain object
+ * @returns Promise
+ */
+ public setNodePoolSize(request: google.container.v1.ISetNodePoolSizeRequest): Promise;
+
+ /**
+ * Calls SetNetworkPolicy.
+ * @param request SetNetworkPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setNetworkPolicy(request: google.container.v1.ISetNetworkPolicyRequest, callback: google.container.v1.ClusterManager.SetNetworkPolicyCallback): void;
+
+ /**
+ * Calls SetNetworkPolicy.
+ * @param request SetNetworkPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setNetworkPolicy(request: google.container.v1.ISetNetworkPolicyRequest): Promise;
+
+ /**
+ * Calls SetMaintenancePolicy.
+ * @param request SetMaintenancePolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public setMaintenancePolicy(request: google.container.v1.ISetMaintenancePolicyRequest, callback: google.container.v1.ClusterManager.SetMaintenancePolicyCallback): void;
+
+ /**
+ * Calls SetMaintenancePolicy.
+ * @param request SetMaintenancePolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setMaintenancePolicy(request: google.container.v1.ISetMaintenancePolicyRequest): Promise;
+
+ /**
+ * Calls ListUsableSubnetworks.
+ * @param request ListUsableSubnetworksRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListUsableSubnetworksResponse
+ */
+ public listUsableSubnetworks(request: google.container.v1.IListUsableSubnetworksRequest, callback: google.container.v1.ClusterManager.ListUsableSubnetworksCallback): void;
+
+ /**
+ * Calls ListUsableSubnetworks.
+ * @param request ListUsableSubnetworksRequest message or plain object
+ * @returns Promise
+ */
+ public listUsableSubnetworks(request: google.container.v1.IListUsableSubnetworksRequest): Promise;
+ }
+
+ namespace ClusterManager {
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listClusters}.
+ * @param error Error, if any
+ * @param [response] ListClustersResponse
+ */
+ type ListClustersCallback = (error: (Error|null), response?: google.container.v1.ListClustersResponse) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getCluster}.
+ * @param error Error, if any
+ * @param [response] Cluster
+ */
+ type GetClusterCallback = (error: (Error|null), response?: google.container.v1.Cluster) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|createCluster}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateClusterCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|updateCluster}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateClusterCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|updateNodePool}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateNodePoolCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNodePoolAutoscaling}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetNodePoolAutoscalingCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLoggingService}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetLoggingServiceCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setMonitoringService}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetMonitoringServiceCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setAddonsConfig}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetAddonsConfigCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLocations}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetLocationsCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|updateMaster}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type UpdateMasterCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setMasterAuth}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetMasterAuthCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|deleteCluster}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteClusterCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listOperations}.
+ * @param error Error, if any
+ * @param [response] ListOperationsResponse
+ */
+ type ListOperationsCallback = (error: (Error|null), response?: google.container.v1.ListOperationsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getOperation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type GetOperationCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|cancelOperation}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type CancelOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getServerConfig}.
+ * @param error Error, if any
+ * @param [response] ServerConfig
+ */
+ type GetServerConfigCallback = (error: (Error|null), response?: google.container.v1.ServerConfig) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getJSONWebKeys}.
+ * @param error Error, if any
+ * @param [response] GetJSONWebKeysResponse
+ */
+ type GetJSONWebKeysCallback = (error: (Error|null), response?: google.container.v1.GetJSONWebKeysResponse) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listNodePools}.
+ * @param error Error, if any
+ * @param [response] ListNodePoolsResponse
+ */
+ type ListNodePoolsCallback = (error: (Error|null), response?: google.container.v1.ListNodePoolsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getNodePool}.
+ * @param error Error, if any
+ * @param [response] NodePool
+ */
+ type GetNodePoolCallback = (error: (Error|null), response?: google.container.v1.NodePool) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|createNodePool}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CreateNodePoolCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|deleteNodePool}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type DeleteNodePoolCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|completeNodePoolUpgrade}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type CompleteNodePoolUpgradeCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|rollbackNodePoolUpgrade}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type RollbackNodePoolUpgradeCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNodePoolManagement}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetNodePoolManagementCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLabels}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetLabelsCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLegacyAbac}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetLegacyAbacCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|startIPRotation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type StartIPRotationCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|completeIPRotation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type CompleteIPRotationCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNodePoolSize}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetNodePoolSizeCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNetworkPolicy}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetNetworkPolicyCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setMaintenancePolicy}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type SetMaintenancePolicyCallback = (error: (Error|null), response?: google.container.v1.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listUsableSubnetworks}.
+ * @param error Error, if any
+ * @param [response] ListUsableSubnetworksResponse
+ */
+ type ListUsableSubnetworksCallback = (error: (Error|null), response?: google.container.v1.ListUsableSubnetworksResponse) => void;
+ }
+
+ /** Properties of a LinuxNodeConfig. */
+ interface ILinuxNodeConfig {
+
+ /** LinuxNodeConfig sysctls */
+ sysctls?: ({ [k: string]: string }|null);
+
+ /** LinuxNodeConfig cgroupMode */
+ cgroupMode?: (google.container.v1.LinuxNodeConfig.CgroupMode|keyof typeof google.container.v1.LinuxNodeConfig.CgroupMode|null);
+ }
+
+ /** Represents a LinuxNodeConfig. */
+ class LinuxNodeConfig implements ILinuxNodeConfig {
+
+ /**
+ * Constructs a new LinuxNodeConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ILinuxNodeConfig);
+
+ /** LinuxNodeConfig sysctls. */
+ public sysctls: { [k: string]: string };
+
+ /** LinuxNodeConfig cgroupMode. */
+ public cgroupMode: (google.container.v1.LinuxNodeConfig.CgroupMode|keyof typeof google.container.v1.LinuxNodeConfig.CgroupMode);
+
+ /**
+ * Creates a new LinuxNodeConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LinuxNodeConfig instance
+ */
+ public static create(properties?: google.container.v1.ILinuxNodeConfig): google.container.v1.LinuxNodeConfig;
+
+ /**
+ * Encodes the specified LinuxNodeConfig message. Does not implicitly {@link google.container.v1.LinuxNodeConfig.verify|verify} messages.
+ * @param message LinuxNodeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ILinuxNodeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LinuxNodeConfig message, length delimited. Does not implicitly {@link google.container.v1.LinuxNodeConfig.verify|verify} messages.
+ * @param message LinuxNodeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ILinuxNodeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LinuxNodeConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LinuxNodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.LinuxNodeConfig;
+
+ /**
+ * Decodes a LinuxNodeConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LinuxNodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.LinuxNodeConfig;
+
+ /**
+ * Verifies a LinuxNodeConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LinuxNodeConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LinuxNodeConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.LinuxNodeConfig;
+
+ /**
+ * Creates a plain object from a LinuxNodeConfig message. Also converts values to other types if specified.
+ * @param message LinuxNodeConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.LinuxNodeConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LinuxNodeConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LinuxNodeConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace LinuxNodeConfig {
+
+ /** CgroupMode enum. */
+ enum CgroupMode {
+ CGROUP_MODE_UNSPECIFIED = 0,
+ CGROUP_MODE_V1 = 1,
+ CGROUP_MODE_V2 = 2
+ }
+ }
+
+ /** Properties of a NodeKubeletConfig. */
+ interface INodeKubeletConfig {
+
+ /** NodeKubeletConfig cpuManagerPolicy */
+ cpuManagerPolicy?: (string|null);
+
+ /** NodeKubeletConfig cpuCfsQuota */
+ cpuCfsQuota?: (google.protobuf.IBoolValue|null);
+
+ /** NodeKubeletConfig cpuCfsQuotaPeriod */
+ cpuCfsQuotaPeriod?: (string|null);
+
+ /** NodeKubeletConfig podPidsLimit */
+ podPidsLimit?: (number|Long|string|null);
+ }
+
+ /** Represents a NodeKubeletConfig. */
+ class NodeKubeletConfig implements INodeKubeletConfig {
+
+ /**
+ * Constructs a new NodeKubeletConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeKubeletConfig);
+
+ /** NodeKubeletConfig cpuManagerPolicy. */
+ public cpuManagerPolicy: string;
+
+ /** NodeKubeletConfig cpuCfsQuota. */
+ public cpuCfsQuota?: (google.protobuf.IBoolValue|null);
+
+ /** NodeKubeletConfig cpuCfsQuotaPeriod. */
+ public cpuCfsQuotaPeriod: string;
+
+ /** NodeKubeletConfig podPidsLimit. */
+ public podPidsLimit: (number|Long|string);
+
+ /**
+ * Creates a new NodeKubeletConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeKubeletConfig instance
+ */
+ public static create(properties?: google.container.v1.INodeKubeletConfig): google.container.v1.NodeKubeletConfig;
+
+ /**
+ * Encodes the specified NodeKubeletConfig message. Does not implicitly {@link google.container.v1.NodeKubeletConfig.verify|verify} messages.
+ * @param message NodeKubeletConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeKubeletConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeKubeletConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeKubeletConfig.verify|verify} messages.
+ * @param message NodeKubeletConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeKubeletConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeKubeletConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeKubeletConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeKubeletConfig;
+
+ /**
+ * Decodes a NodeKubeletConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeKubeletConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeKubeletConfig;
+
+ /**
+ * Verifies a NodeKubeletConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeKubeletConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeKubeletConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeKubeletConfig;
+
+ /**
+ * Creates a plain object from a NodeKubeletConfig message. Also converts values to other types if specified.
+ * @param message NodeKubeletConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeKubeletConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeKubeletConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeKubeletConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodeConfig. */
+ interface INodeConfig {
+
+ /** NodeConfig machineType */
+ machineType?: (string|null);
+
+ /** NodeConfig diskSizeGb */
+ diskSizeGb?: (number|null);
+
+ /** NodeConfig oauthScopes */
+ oauthScopes?: (string[]|null);
+
+ /** NodeConfig serviceAccount */
+ serviceAccount?: (string|null);
+
+ /** NodeConfig metadata */
+ metadata?: ({ [k: string]: string }|null);
+
+ /** NodeConfig imageType */
+ imageType?: (string|null);
+
+ /** NodeConfig labels */
+ labels?: ({ [k: string]: string }|null);
+
+ /** NodeConfig localSsdCount */
+ localSsdCount?: (number|null);
+
+ /** NodeConfig tags */
+ tags?: (string[]|null);
+
+ /** NodeConfig preemptible */
+ preemptible?: (boolean|null);
+
+ /** NodeConfig accelerators */
+ accelerators?: (google.container.v1.IAcceleratorConfig[]|null);
+
+ /** NodeConfig diskType */
+ diskType?: (string|null);
+
+ /** NodeConfig minCpuPlatform */
+ minCpuPlatform?: (string|null);
+
+ /** NodeConfig workloadMetadataConfig */
+ workloadMetadataConfig?: (google.container.v1.IWorkloadMetadataConfig|null);
+
+ /** NodeConfig taints */
+ taints?: (google.container.v1.INodeTaint[]|null);
+
+ /** NodeConfig sandboxConfig */
+ sandboxConfig?: (google.container.v1.ISandboxConfig|null);
+
+ /** NodeConfig nodeGroup */
+ nodeGroup?: (string|null);
+
+ /** NodeConfig reservationAffinity */
+ reservationAffinity?: (google.container.v1.IReservationAffinity|null);
+
+ /** NodeConfig shieldedInstanceConfig */
+ shieldedInstanceConfig?: (google.container.v1.IShieldedInstanceConfig|null);
+
+ /** NodeConfig linuxNodeConfig */
+ linuxNodeConfig?: (google.container.v1.ILinuxNodeConfig|null);
+
+ /** NodeConfig kubeletConfig */
+ kubeletConfig?: (google.container.v1.INodeKubeletConfig|null);
+
+ /** NodeConfig bootDiskKmsKey */
+ bootDiskKmsKey?: (string|null);
+
+ /** NodeConfig gcfsConfig */
+ gcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** NodeConfig advancedMachineFeatures */
+ advancedMachineFeatures?: (google.container.v1.IAdvancedMachineFeatures|null);
+
+ /** NodeConfig gvnic */
+ gvnic?: (google.container.v1.IVirtualNIC|null);
+
+ /** NodeConfig spot */
+ spot?: (boolean|null);
+
+ /** NodeConfig confidentialNodes */
+ confidentialNodes?: (google.container.v1.IConfidentialNodes|null);
+
+ /** NodeConfig resourceLabels */
+ resourceLabels?: ({ [k: string]: string }|null);
+
+ /** NodeConfig loggingConfig */
+ loggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+ }
+
+ /** Represents a NodeConfig. */
+ class NodeConfig implements INodeConfig {
+
+ /**
+ * Constructs a new NodeConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeConfig);
+
+ /** NodeConfig machineType. */
+ public machineType: string;
+
+ /** NodeConfig diskSizeGb. */
+ public diskSizeGb: number;
+
+ /** NodeConfig oauthScopes. */
+ public oauthScopes: string[];
+
+ /** NodeConfig serviceAccount. */
+ public serviceAccount: string;
+
+ /** NodeConfig metadata. */
+ public metadata: { [k: string]: string };
+
+ /** NodeConfig imageType. */
+ public imageType: string;
+
+ /** NodeConfig labels. */
+ public labels: { [k: string]: string };
+
+ /** NodeConfig localSsdCount. */
+ public localSsdCount: number;
+
+ /** NodeConfig tags. */
+ public tags: string[];
+
+ /** NodeConfig preemptible. */
+ public preemptible: boolean;
+
+ /** NodeConfig accelerators. */
+ public accelerators: google.container.v1.IAcceleratorConfig[];
+
+ /** NodeConfig diskType. */
+ public diskType: string;
+
+ /** NodeConfig minCpuPlatform. */
+ public minCpuPlatform: string;
+
+ /** NodeConfig workloadMetadataConfig. */
+ public workloadMetadataConfig?: (google.container.v1.IWorkloadMetadataConfig|null);
+
+ /** NodeConfig taints. */
+ public taints: google.container.v1.INodeTaint[];
+
+ /** NodeConfig sandboxConfig. */
+ public sandboxConfig?: (google.container.v1.ISandboxConfig|null);
+
+ /** NodeConfig nodeGroup. */
+ public nodeGroup: string;
+
+ /** NodeConfig reservationAffinity. */
+ public reservationAffinity?: (google.container.v1.IReservationAffinity|null);
+
+ /** NodeConfig shieldedInstanceConfig. */
+ public shieldedInstanceConfig?: (google.container.v1.IShieldedInstanceConfig|null);
+
+ /** NodeConfig linuxNodeConfig. */
+ public linuxNodeConfig?: (google.container.v1.ILinuxNodeConfig|null);
+
+ /** NodeConfig kubeletConfig. */
+ public kubeletConfig?: (google.container.v1.INodeKubeletConfig|null);
+
+ /** NodeConfig bootDiskKmsKey. */
+ public bootDiskKmsKey: string;
+
+ /** NodeConfig gcfsConfig. */
+ public gcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** NodeConfig advancedMachineFeatures. */
+ public advancedMachineFeatures?: (google.container.v1.IAdvancedMachineFeatures|null);
+
+ /** NodeConfig gvnic. */
+ public gvnic?: (google.container.v1.IVirtualNIC|null);
+
+ /** NodeConfig spot. */
+ public spot: boolean;
+
+ /** NodeConfig confidentialNodes. */
+ public confidentialNodes?: (google.container.v1.IConfidentialNodes|null);
+
+ /** NodeConfig resourceLabels. */
+ public resourceLabels: { [k: string]: string };
+
+ /** NodeConfig loggingConfig. */
+ public loggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+
+ /**
+ * Creates a new NodeConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeConfig instance
+ */
+ public static create(properties?: google.container.v1.INodeConfig): google.container.v1.NodeConfig;
+
+ /**
+ * Encodes the specified NodeConfig message. Does not implicitly {@link google.container.v1.NodeConfig.verify|verify} messages.
+ * @param message NodeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeConfig.verify|verify} messages.
+ * @param message NodeConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeConfig;
+
+ /**
+ * Decodes a NodeConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeConfig;
+
+ /**
+ * Verifies a NodeConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeConfig;
+
+ /**
+ * Creates a plain object from a NodeConfig message. Also converts values to other types if specified.
+ * @param message NodeConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AdvancedMachineFeatures. */
+ interface IAdvancedMachineFeatures {
+
+ /** AdvancedMachineFeatures threadsPerCore */
+ threadsPerCore?: (number|Long|string|null);
+ }
+
+ /** Represents an AdvancedMachineFeatures. */
+ class AdvancedMachineFeatures implements IAdvancedMachineFeatures {
+
+ /**
+ * Constructs a new AdvancedMachineFeatures.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAdvancedMachineFeatures);
+
+ /** AdvancedMachineFeatures threadsPerCore. */
+ public threadsPerCore?: (number|Long|string|null);
+
+ /** AdvancedMachineFeatures _threadsPerCore. */
+ public _threadsPerCore?: "threadsPerCore";
+
+ /**
+ * Creates a new AdvancedMachineFeatures instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AdvancedMachineFeatures instance
+ */
+ public static create(properties?: google.container.v1.IAdvancedMachineFeatures): google.container.v1.AdvancedMachineFeatures;
+
+ /**
+ * Encodes the specified AdvancedMachineFeatures message. Does not implicitly {@link google.container.v1.AdvancedMachineFeatures.verify|verify} messages.
+ * @param message AdvancedMachineFeatures message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAdvancedMachineFeatures, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AdvancedMachineFeatures message, length delimited. Does not implicitly {@link google.container.v1.AdvancedMachineFeatures.verify|verify} messages.
+ * @param message AdvancedMachineFeatures message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAdvancedMachineFeatures, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AdvancedMachineFeatures message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AdvancedMachineFeatures
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AdvancedMachineFeatures;
+
+ /**
+ * Decodes an AdvancedMachineFeatures message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AdvancedMachineFeatures
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AdvancedMachineFeatures;
+
+ /**
+ * Verifies an AdvancedMachineFeatures message.
+ * @param message Plain 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 AdvancedMachineFeatures message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AdvancedMachineFeatures
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.AdvancedMachineFeatures;
+
+ /**
+ * Creates a plain object from an AdvancedMachineFeatures message. Also converts values to other types if specified.
+ * @param message AdvancedMachineFeatures
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.AdvancedMachineFeatures, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AdvancedMachineFeatures to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AdvancedMachineFeatures
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodeNetworkConfig. */
+ interface INodeNetworkConfig {
+
+ /** NodeNetworkConfig createPodRange */
+ createPodRange?: (boolean|null);
+
+ /** NodeNetworkConfig podRange */
+ podRange?: (string|null);
+
+ /** NodeNetworkConfig podIpv4CidrBlock */
+ podIpv4CidrBlock?: (string|null);
+
+ /** NodeNetworkConfig enablePrivateNodes */
+ enablePrivateNodes?: (boolean|null);
+
+ /** NodeNetworkConfig networkPerformanceConfig */
+ networkPerformanceConfig?: (google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig|null);
+ }
+
+ /** Represents a NodeNetworkConfig. */
+ class NodeNetworkConfig implements INodeNetworkConfig {
+
+ /**
+ * Constructs a new NodeNetworkConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeNetworkConfig);
+
+ /** NodeNetworkConfig createPodRange. */
+ public createPodRange: boolean;
+
+ /** NodeNetworkConfig podRange. */
+ public podRange: string;
+
+ /** NodeNetworkConfig podIpv4CidrBlock. */
+ public podIpv4CidrBlock: string;
+
+ /** NodeNetworkConfig enablePrivateNodes. */
+ public enablePrivateNodes?: (boolean|null);
+
+ /** NodeNetworkConfig networkPerformanceConfig. */
+ public networkPerformanceConfig?: (google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig|null);
+
+ /** NodeNetworkConfig _enablePrivateNodes. */
+ public _enablePrivateNodes?: "enablePrivateNodes";
+
+ /** NodeNetworkConfig _networkPerformanceConfig. */
+ public _networkPerformanceConfig?: "networkPerformanceConfig";
+
+ /**
+ * Creates a new NodeNetworkConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeNetworkConfig instance
+ */
+ public static create(properties?: google.container.v1.INodeNetworkConfig): google.container.v1.NodeNetworkConfig;
+
+ /**
+ * Encodes the specified NodeNetworkConfig message. Does not implicitly {@link google.container.v1.NodeNetworkConfig.verify|verify} messages.
+ * @param message NodeNetworkConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeNetworkConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeNetworkConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeNetworkConfig.verify|verify} messages.
+ * @param message NodeNetworkConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeNetworkConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeNetworkConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeNetworkConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeNetworkConfig;
+
+ /**
+ * Decodes a NodeNetworkConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeNetworkConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeNetworkConfig;
+
+ /**
+ * Verifies a NodeNetworkConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeNetworkConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeNetworkConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeNetworkConfig;
+
+ /**
+ * Creates a plain object from a NodeNetworkConfig message. Also converts values to other types if specified.
+ * @param message NodeNetworkConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeNetworkConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeNetworkConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeNetworkConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NodeNetworkConfig {
+
+ /** Properties of a NetworkPerformanceConfig. */
+ interface INetworkPerformanceConfig {
+
+ /** NetworkPerformanceConfig totalEgressBandwidthTier */
+ totalEgressBandwidthTier?: (google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier|keyof typeof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier|null);
+ }
+
+ /** Represents a NetworkPerformanceConfig. */
+ class NetworkPerformanceConfig implements INetworkPerformanceConfig {
+
+ /**
+ * Constructs a new NetworkPerformanceConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig);
+
+ /** NetworkPerformanceConfig totalEgressBandwidthTier. */
+ public totalEgressBandwidthTier?: (google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier|keyof typeof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier|null);
+
+ /** NetworkPerformanceConfig _totalEgressBandwidthTier. */
+ public _totalEgressBandwidthTier?: "totalEgressBandwidthTier";
+
+ /**
+ * Creates a new NetworkPerformanceConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NetworkPerformanceConfig instance
+ */
+ public static create(properties?: google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig): google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig;
+
+ /**
+ * Encodes the specified NetworkPerformanceConfig message. Does not implicitly {@link google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.verify|verify} messages.
+ * @param message NetworkPerformanceConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NetworkPerformanceConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.verify|verify} messages.
+ * @param message NetworkPerformanceConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NetworkPerformanceConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NetworkPerformanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig;
+
+ /**
+ * Decodes a NetworkPerformanceConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NetworkPerformanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig;
+
+ /**
+ * Verifies a NetworkPerformanceConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NetworkPerformanceConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NetworkPerformanceConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig;
+
+ /**
+ * Creates a plain object from a NetworkPerformanceConfig message. Also converts values to other types if specified.
+ * @param message NetworkPerformanceConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NetworkPerformanceConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NetworkPerformanceConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NetworkPerformanceConfig {
+
+ /** Tier enum. */
+ enum Tier {
+ TIER_UNSPECIFIED = 0,
+ TIER_1 = 1
+ }
+ }
+ }
+
+ /** Properties of a ShieldedInstanceConfig. */
+ interface IShieldedInstanceConfig {
+
+ /** ShieldedInstanceConfig enableSecureBoot */
+ enableSecureBoot?: (boolean|null);
+
+ /** ShieldedInstanceConfig enableIntegrityMonitoring */
+ enableIntegrityMonitoring?: (boolean|null);
+ }
+
+ /** Represents a ShieldedInstanceConfig. */
+ class ShieldedInstanceConfig implements IShieldedInstanceConfig {
+
+ /**
+ * Constructs a new ShieldedInstanceConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IShieldedInstanceConfig);
+
+ /** ShieldedInstanceConfig enableSecureBoot. */
+ public enableSecureBoot: boolean;
+
+ /** ShieldedInstanceConfig enableIntegrityMonitoring. */
+ public enableIntegrityMonitoring: boolean;
+
+ /**
+ * Creates a new ShieldedInstanceConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ShieldedInstanceConfig instance
+ */
+ public static create(properties?: google.container.v1.IShieldedInstanceConfig): google.container.v1.ShieldedInstanceConfig;
+
+ /**
+ * Encodes the specified ShieldedInstanceConfig message. Does not implicitly {@link google.container.v1.ShieldedInstanceConfig.verify|verify} messages.
+ * @param message ShieldedInstanceConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IShieldedInstanceConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ShieldedInstanceConfig message, length delimited. Does not implicitly {@link google.container.v1.ShieldedInstanceConfig.verify|verify} messages.
+ * @param message ShieldedInstanceConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IShieldedInstanceConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ShieldedInstanceConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ShieldedInstanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ShieldedInstanceConfig;
+
+ /**
+ * Decodes a ShieldedInstanceConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ShieldedInstanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ShieldedInstanceConfig;
+
+ /**
+ * Verifies a ShieldedInstanceConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ShieldedInstanceConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ShieldedInstanceConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ShieldedInstanceConfig;
+
+ /**
+ * Creates a plain object from a ShieldedInstanceConfig message. Also converts values to other types if specified.
+ * @param message ShieldedInstanceConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ShieldedInstanceConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ShieldedInstanceConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ShieldedInstanceConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SandboxConfig. */
+ interface ISandboxConfig {
+
+ /** SandboxConfig type */
+ type?: (google.container.v1.SandboxConfig.Type|keyof typeof google.container.v1.SandboxConfig.Type|null);
+ }
+
+ /** Represents a SandboxConfig. */
+ class SandboxConfig implements ISandboxConfig {
+
+ /**
+ * Constructs a new SandboxConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISandboxConfig);
+
+ /** SandboxConfig type. */
+ public type: (google.container.v1.SandboxConfig.Type|keyof typeof google.container.v1.SandboxConfig.Type);
+
+ /**
+ * Creates a new SandboxConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SandboxConfig instance
+ */
+ public static create(properties?: google.container.v1.ISandboxConfig): google.container.v1.SandboxConfig;
+
+ /**
+ * Encodes the specified SandboxConfig message. Does not implicitly {@link google.container.v1.SandboxConfig.verify|verify} messages.
+ * @param message SandboxConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISandboxConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SandboxConfig message, length delimited. Does not implicitly {@link google.container.v1.SandboxConfig.verify|verify} messages.
+ * @param message SandboxConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISandboxConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SandboxConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SandboxConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SandboxConfig;
+
+ /**
+ * Decodes a SandboxConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SandboxConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SandboxConfig;
+
+ /**
+ * Verifies a SandboxConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SandboxConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SandboxConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SandboxConfig;
+
+ /**
+ * Creates a plain object from a SandboxConfig message. Also converts values to other types if specified.
+ * @param message SandboxConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SandboxConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SandboxConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SandboxConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SandboxConfig {
+
+ /** Type enum. */
+ enum Type {
+ UNSPECIFIED = 0,
+ GVISOR = 1
+ }
+ }
+
+ /** Properties of a GcfsConfig. */
+ interface IGcfsConfig {
+
+ /** GcfsConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a GcfsConfig. */
+ class GcfsConfig implements IGcfsConfig {
+
+ /**
+ * Constructs a new GcfsConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGcfsConfig);
+
+ /** GcfsConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new GcfsConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcfsConfig instance
+ */
+ public static create(properties?: google.container.v1.IGcfsConfig): google.container.v1.GcfsConfig;
+
+ /**
+ * Encodes the specified GcfsConfig message. Does not implicitly {@link google.container.v1.GcfsConfig.verify|verify} messages.
+ * @param message GcfsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGcfsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcfsConfig message, length delimited. Does not implicitly {@link google.container.v1.GcfsConfig.verify|verify} messages.
+ * @param message GcfsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGcfsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcfsConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcfsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GcfsConfig;
+
+ /**
+ * Decodes a GcfsConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcfsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GcfsConfig;
+
+ /**
+ * Verifies a GcfsConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcfsConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcfsConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GcfsConfig;
+
+ /**
+ * Creates a plain object from a GcfsConfig message. Also converts values to other types if specified.
+ * @param message GcfsConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GcfsConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcfsConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcfsConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReservationAffinity. */
+ interface IReservationAffinity {
+
+ /** ReservationAffinity consumeReservationType */
+ consumeReservationType?: (google.container.v1.ReservationAffinity.Type|keyof typeof google.container.v1.ReservationAffinity.Type|null);
+
+ /** ReservationAffinity key */
+ key?: (string|null);
+
+ /** ReservationAffinity values */
+ values?: (string[]|null);
+ }
+
+ /** Represents a ReservationAffinity. */
+ class ReservationAffinity implements IReservationAffinity {
+
+ /**
+ * Constructs a new ReservationAffinity.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IReservationAffinity);
+
+ /** ReservationAffinity consumeReservationType. */
+ public consumeReservationType: (google.container.v1.ReservationAffinity.Type|keyof typeof google.container.v1.ReservationAffinity.Type);
+
+ /** ReservationAffinity key. */
+ public key: string;
+
+ /** ReservationAffinity values. */
+ public values: string[];
+
+ /**
+ * Creates a new ReservationAffinity instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReservationAffinity instance
+ */
+ public static create(properties?: google.container.v1.IReservationAffinity): google.container.v1.ReservationAffinity;
+
+ /**
+ * Encodes the specified ReservationAffinity message. Does not implicitly {@link google.container.v1.ReservationAffinity.verify|verify} messages.
+ * @param message ReservationAffinity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IReservationAffinity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReservationAffinity message, length delimited. Does not implicitly {@link google.container.v1.ReservationAffinity.verify|verify} messages.
+ * @param message ReservationAffinity message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IReservationAffinity, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReservationAffinity message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReservationAffinity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ReservationAffinity;
+
+ /**
+ * Decodes a ReservationAffinity message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReservationAffinity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ReservationAffinity;
+
+ /**
+ * Verifies a ReservationAffinity message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReservationAffinity message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReservationAffinity
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ReservationAffinity;
+
+ /**
+ * Creates a plain object from a ReservationAffinity message. Also converts values to other types if specified.
+ * @param message ReservationAffinity
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ReservationAffinity, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReservationAffinity to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReservationAffinity
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ReservationAffinity {
+
+ /** Type enum. */
+ enum Type {
+ UNSPECIFIED = 0,
+ NO_RESERVATION = 1,
+ ANY_RESERVATION = 2,
+ SPECIFIC_RESERVATION = 3
+ }
+ }
+
+ /** Properties of a NodeTaint. */
+ interface INodeTaint {
+
+ /** NodeTaint key */
+ key?: (string|null);
+
+ /** NodeTaint value */
+ value?: (string|null);
+
+ /** NodeTaint effect */
+ effect?: (google.container.v1.NodeTaint.Effect|keyof typeof google.container.v1.NodeTaint.Effect|null);
+ }
+
+ /** Represents a NodeTaint. */
+ class NodeTaint implements INodeTaint {
+
+ /**
+ * Constructs a new NodeTaint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeTaint);
+
+ /** NodeTaint key. */
+ public key: string;
+
+ /** NodeTaint value. */
+ public value: string;
+
+ /** NodeTaint effect. */
+ public effect: (google.container.v1.NodeTaint.Effect|keyof typeof google.container.v1.NodeTaint.Effect);
+
+ /**
+ * Creates a new NodeTaint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeTaint instance
+ */
+ public static create(properties?: google.container.v1.INodeTaint): google.container.v1.NodeTaint;
+
+ /**
+ * Encodes the specified NodeTaint message. Does not implicitly {@link google.container.v1.NodeTaint.verify|verify} messages.
+ * @param message NodeTaint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeTaint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeTaint message, length delimited. Does not implicitly {@link google.container.v1.NodeTaint.verify|verify} messages.
+ * @param message NodeTaint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeTaint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeTaint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeTaint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeTaint;
+
+ /**
+ * Decodes a NodeTaint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeTaint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeTaint;
+
+ /**
+ * Verifies a NodeTaint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeTaint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeTaint
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeTaint;
+
+ /**
+ * Creates a plain object from a NodeTaint message. Also converts values to other types if specified.
+ * @param message NodeTaint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeTaint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeTaint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeTaint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NodeTaint {
+
+ /** Effect enum. */
+ enum Effect {
+ EFFECT_UNSPECIFIED = 0,
+ NO_SCHEDULE = 1,
+ PREFER_NO_SCHEDULE = 2,
+ NO_EXECUTE = 3
+ }
+ }
+
+ /** Properties of a NodeTaints. */
+ interface INodeTaints {
+
+ /** NodeTaints taints */
+ taints?: (google.container.v1.INodeTaint[]|null);
+ }
+
+ /** Represents a NodeTaints. */
+ class NodeTaints implements INodeTaints {
+
+ /**
+ * Constructs a new NodeTaints.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeTaints);
+
+ /** NodeTaints taints. */
+ public taints: google.container.v1.INodeTaint[];
+
+ /**
+ * Creates a new NodeTaints instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeTaints instance
+ */
+ public static create(properties?: google.container.v1.INodeTaints): google.container.v1.NodeTaints;
+
+ /**
+ * Encodes the specified NodeTaints message. Does not implicitly {@link google.container.v1.NodeTaints.verify|verify} messages.
+ * @param message NodeTaints message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeTaints, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeTaints message, length delimited. Does not implicitly {@link google.container.v1.NodeTaints.verify|verify} messages.
+ * @param message NodeTaints message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeTaints, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeTaints message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeTaints
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeTaints;
+
+ /**
+ * Decodes a NodeTaints message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeTaints
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeTaints;
+
+ /**
+ * Verifies a NodeTaints message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeTaints message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeTaints
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeTaints;
+
+ /**
+ * Creates a plain object from a NodeTaints message. Also converts values to other types if specified.
+ * @param message NodeTaints
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeTaints, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeTaints to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeTaints
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodeLabels. */
+ interface INodeLabels {
+
+ /** NodeLabels labels */
+ labels?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a NodeLabels. */
+ class NodeLabels implements INodeLabels {
+
+ /**
+ * Constructs a new NodeLabels.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeLabels);
+
+ /** NodeLabels labels. */
+ public labels: { [k: string]: string };
+
+ /**
+ * Creates a new NodeLabels instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeLabels instance
+ */
+ public static create(properties?: google.container.v1.INodeLabels): google.container.v1.NodeLabels;
+
+ /**
+ * Encodes the specified NodeLabels message. Does not implicitly {@link google.container.v1.NodeLabels.verify|verify} messages.
+ * @param message NodeLabels message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeLabels, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeLabels message, length delimited. Does not implicitly {@link google.container.v1.NodeLabels.verify|verify} messages.
+ * @param message NodeLabels message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeLabels, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeLabels message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeLabels;
+
+ /**
+ * Decodes a NodeLabels message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeLabels;
+
+ /**
+ * Verifies a NodeLabels message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeLabels message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeLabels
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeLabels;
+
+ /**
+ * Creates a plain object from a NodeLabels message. Also converts values to other types if specified.
+ * @param message NodeLabels
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeLabels, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeLabels to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeLabels
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ResourceLabels. */
+ interface IResourceLabels {
+
+ /** ResourceLabels labels */
+ labels?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a ResourceLabels. */
+ class ResourceLabels implements IResourceLabels {
+
+ /**
+ * Constructs a new ResourceLabels.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IResourceLabels);
+
+ /** ResourceLabels labels. */
+ public labels: { [k: string]: string };
+
+ /**
+ * Creates a new ResourceLabels instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceLabels instance
+ */
+ public static create(properties?: google.container.v1.IResourceLabels): google.container.v1.ResourceLabels;
+
+ /**
+ * Encodes the specified ResourceLabels message. Does not implicitly {@link google.container.v1.ResourceLabels.verify|verify} messages.
+ * @param message ResourceLabels message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IResourceLabels, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceLabels message, length delimited. Does not implicitly {@link google.container.v1.ResourceLabels.verify|verify} messages.
+ * @param message ResourceLabels message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IResourceLabels, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceLabels message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ResourceLabels;
+
+ /**
+ * Decodes a ResourceLabels message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ResourceLabels;
+
+ /**
+ * Verifies a ResourceLabels message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceLabels message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceLabels
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ResourceLabels;
+
+ /**
+ * Creates a plain object from a ResourceLabels message. Also converts values to other types if specified.
+ * @param message ResourceLabels
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ResourceLabels, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceLabels to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceLabels
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NetworkTags. */
+ interface INetworkTags {
+
+ /** NetworkTags tags */
+ tags?: (string[]|null);
+ }
+
+ /** Represents a NetworkTags. */
+ class NetworkTags implements INetworkTags {
+
+ /**
+ * Constructs a new NetworkTags.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INetworkTags);
+
+ /** NetworkTags tags. */
+ public tags: string[];
+
+ /**
+ * Creates a new NetworkTags instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NetworkTags instance
+ */
+ public static create(properties?: google.container.v1.INetworkTags): google.container.v1.NetworkTags;
+
+ /**
+ * Encodes the specified NetworkTags message. Does not implicitly {@link google.container.v1.NetworkTags.verify|verify} messages.
+ * @param message NetworkTags message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INetworkTags, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NetworkTags message, length delimited. Does not implicitly {@link google.container.v1.NetworkTags.verify|verify} messages.
+ * @param message NetworkTags message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INetworkTags, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NetworkTags message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NetworkTags
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NetworkTags;
+
+ /**
+ * Decodes a NetworkTags message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NetworkTags
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NetworkTags;
+
+ /**
+ * Verifies a NetworkTags message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NetworkTags message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NetworkTags
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NetworkTags;
+
+ /**
+ * Creates a plain object from a NetworkTags message. Also converts values to other types if specified.
+ * @param message NetworkTags
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NetworkTags, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NetworkTags to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NetworkTags
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MasterAuth. */
+ interface IMasterAuth {
+
+ /** MasterAuth username */
+ username?: (string|null);
+
+ /** MasterAuth password */
+ password?: (string|null);
+
+ /** MasterAuth clientCertificateConfig */
+ clientCertificateConfig?: (google.container.v1.IClientCertificateConfig|null);
+
+ /** MasterAuth clusterCaCertificate */
+ clusterCaCertificate?: (string|null);
+
+ /** MasterAuth clientCertificate */
+ clientCertificate?: (string|null);
+
+ /** MasterAuth clientKey */
+ clientKey?: (string|null);
+ }
+
+ /** Represents a MasterAuth. */
+ class MasterAuth implements IMasterAuth {
+
+ /**
+ * Constructs a new MasterAuth.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMasterAuth);
+
+ /** MasterAuth username. */
+ public username: string;
+
+ /** MasterAuth password. */
+ public password: string;
+
+ /** MasterAuth clientCertificateConfig. */
+ public clientCertificateConfig?: (google.container.v1.IClientCertificateConfig|null);
+
+ /** MasterAuth clusterCaCertificate. */
+ public clusterCaCertificate: string;
+
+ /** MasterAuth clientCertificate. */
+ public clientCertificate: string;
+
+ /** MasterAuth clientKey. */
+ public clientKey: string;
+
+ /**
+ * Creates a new MasterAuth instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MasterAuth instance
+ */
+ public static create(properties?: google.container.v1.IMasterAuth): google.container.v1.MasterAuth;
+
+ /**
+ * Encodes the specified MasterAuth message. Does not implicitly {@link google.container.v1.MasterAuth.verify|verify} messages.
+ * @param message MasterAuth message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMasterAuth, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MasterAuth message, length delimited. Does not implicitly {@link google.container.v1.MasterAuth.verify|verify} messages.
+ * @param message MasterAuth message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMasterAuth, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MasterAuth message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MasterAuth
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MasterAuth;
+
+ /**
+ * Decodes a MasterAuth message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MasterAuth
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MasterAuth;
+
+ /**
+ * Verifies a MasterAuth message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MasterAuth message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MasterAuth
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MasterAuth;
+
+ /**
+ * Creates a plain object from a MasterAuth message. Also converts values to other types if specified.
+ * @param message MasterAuth
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MasterAuth, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MasterAuth to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MasterAuth
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ClientCertificateConfig. */
+ interface IClientCertificateConfig {
+
+ /** ClientCertificateConfig issueClientCertificate */
+ issueClientCertificate?: (boolean|null);
+ }
+
+ /** Represents a ClientCertificateConfig. */
+ class ClientCertificateConfig implements IClientCertificateConfig {
+
+ /**
+ * Constructs a new ClientCertificateConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IClientCertificateConfig);
+
+ /** ClientCertificateConfig issueClientCertificate. */
+ public issueClientCertificate: boolean;
+
+ /**
+ * Creates a new ClientCertificateConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ClientCertificateConfig instance
+ */
+ public static create(properties?: google.container.v1.IClientCertificateConfig): google.container.v1.ClientCertificateConfig;
+
+ /**
+ * Encodes the specified ClientCertificateConfig message. Does not implicitly {@link google.container.v1.ClientCertificateConfig.verify|verify} messages.
+ * @param message ClientCertificateConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IClientCertificateConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ClientCertificateConfig message, length delimited. Does not implicitly {@link google.container.v1.ClientCertificateConfig.verify|verify} messages.
+ * @param message ClientCertificateConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IClientCertificateConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ClientCertificateConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ClientCertificateConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ClientCertificateConfig;
+
+ /**
+ * Decodes a ClientCertificateConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ClientCertificateConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ClientCertificateConfig;
+
+ /**
+ * Verifies a ClientCertificateConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ClientCertificateConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ClientCertificateConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ClientCertificateConfig;
+
+ /**
+ * Creates a plain object from a ClientCertificateConfig message. Also converts values to other types if specified.
+ * @param message ClientCertificateConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ClientCertificateConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ClientCertificateConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ClientCertificateConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AddonsConfig. */
+ interface IAddonsConfig {
+
+ /** AddonsConfig httpLoadBalancing */
+ httpLoadBalancing?: (google.container.v1.IHttpLoadBalancing|null);
+
+ /** AddonsConfig horizontalPodAutoscaling */
+ horizontalPodAutoscaling?: (google.container.v1.IHorizontalPodAutoscaling|null);
+
+ /** AddonsConfig kubernetesDashboard */
+ kubernetesDashboard?: (google.container.v1.IKubernetesDashboard|null);
+
+ /** AddonsConfig networkPolicyConfig */
+ networkPolicyConfig?: (google.container.v1.INetworkPolicyConfig|null);
+
+ /** AddonsConfig cloudRunConfig */
+ cloudRunConfig?: (google.container.v1.ICloudRunConfig|null);
+
+ /** AddonsConfig dnsCacheConfig */
+ dnsCacheConfig?: (google.container.v1.IDnsCacheConfig|null);
+
+ /** AddonsConfig configConnectorConfig */
+ configConnectorConfig?: (google.container.v1.IConfigConnectorConfig|null);
+
+ /** AddonsConfig gcePersistentDiskCsiDriverConfig */
+ gcePersistentDiskCsiDriverConfig?: (google.container.v1.IGcePersistentDiskCsiDriverConfig|null);
+
+ /** AddonsConfig gcpFilestoreCsiDriverConfig */
+ gcpFilestoreCsiDriverConfig?: (google.container.v1.IGcpFilestoreCsiDriverConfig|null);
+
+ /** AddonsConfig gkeBackupAgentConfig */
+ gkeBackupAgentConfig?: (google.container.v1.IGkeBackupAgentConfig|null);
+ }
+
+ /** Represents an AddonsConfig. */
+ class AddonsConfig implements IAddonsConfig {
+
+ /**
+ * Constructs a new AddonsConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAddonsConfig);
+
+ /** AddonsConfig httpLoadBalancing. */
+ public httpLoadBalancing?: (google.container.v1.IHttpLoadBalancing|null);
+
+ /** AddonsConfig horizontalPodAutoscaling. */
+ public horizontalPodAutoscaling?: (google.container.v1.IHorizontalPodAutoscaling|null);
+
+ /** AddonsConfig kubernetesDashboard. */
+ public kubernetesDashboard?: (google.container.v1.IKubernetesDashboard|null);
+
+ /** AddonsConfig networkPolicyConfig. */
+ public networkPolicyConfig?: (google.container.v1.INetworkPolicyConfig|null);
+
+ /** AddonsConfig cloudRunConfig. */
+ public cloudRunConfig?: (google.container.v1.ICloudRunConfig|null);
+
+ /** AddonsConfig dnsCacheConfig. */
+ public dnsCacheConfig?: (google.container.v1.IDnsCacheConfig|null);
+
+ /** AddonsConfig configConnectorConfig. */
+ public configConnectorConfig?: (google.container.v1.IConfigConnectorConfig|null);
+
+ /** AddonsConfig gcePersistentDiskCsiDriverConfig. */
+ public gcePersistentDiskCsiDriverConfig?: (google.container.v1.IGcePersistentDiskCsiDriverConfig|null);
+
+ /** AddonsConfig gcpFilestoreCsiDriverConfig. */
+ public gcpFilestoreCsiDriverConfig?: (google.container.v1.IGcpFilestoreCsiDriverConfig|null);
+
+ /** AddonsConfig gkeBackupAgentConfig. */
+ public gkeBackupAgentConfig?: (google.container.v1.IGkeBackupAgentConfig|null);
+
+ /**
+ * Creates a new AddonsConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AddonsConfig instance
+ */
+ public static create(properties?: google.container.v1.IAddonsConfig): google.container.v1.AddonsConfig;
+
+ /**
+ * Encodes the specified AddonsConfig message. Does not implicitly {@link google.container.v1.AddonsConfig.verify|verify} messages.
+ * @param message AddonsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAddonsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AddonsConfig message, length delimited. Does not implicitly {@link google.container.v1.AddonsConfig.verify|verify} messages.
+ * @param message AddonsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAddonsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AddonsConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AddonsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AddonsConfig;
+
+ /**
+ * Decodes an AddonsConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AddonsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AddonsConfig;
+
+ /**
+ * Verifies an AddonsConfig message.
+ * @param message Plain 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 AddonsConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AddonsConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.AddonsConfig;
+
+ /**
+ * Creates a plain object from an AddonsConfig message. Also converts values to other types if specified.
+ * @param message AddonsConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.AddonsConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AddonsConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AddonsConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a HttpLoadBalancing. */
+ interface IHttpLoadBalancing {
+
+ /** HttpLoadBalancing disabled */
+ disabled?: (boolean|null);
+ }
+
+ /** Represents a HttpLoadBalancing. */
+ class HttpLoadBalancing implements IHttpLoadBalancing {
+
+ /**
+ * Constructs a new HttpLoadBalancing.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IHttpLoadBalancing);
+
+ /** HttpLoadBalancing disabled. */
+ public disabled: boolean;
+
+ /**
+ * Creates a new HttpLoadBalancing instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns HttpLoadBalancing instance
+ */
+ public static create(properties?: google.container.v1.IHttpLoadBalancing): google.container.v1.HttpLoadBalancing;
+
+ /**
+ * Encodes the specified HttpLoadBalancing message. Does not implicitly {@link google.container.v1.HttpLoadBalancing.verify|verify} messages.
+ * @param message HttpLoadBalancing message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IHttpLoadBalancing, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified HttpLoadBalancing message, length delimited. Does not implicitly {@link google.container.v1.HttpLoadBalancing.verify|verify} messages.
+ * @param message HttpLoadBalancing message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IHttpLoadBalancing, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a HttpLoadBalancing message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns HttpLoadBalancing
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.HttpLoadBalancing;
+
+ /**
+ * Decodes a HttpLoadBalancing message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns HttpLoadBalancing
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.HttpLoadBalancing;
+
+ /**
+ * Verifies a HttpLoadBalancing message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a HttpLoadBalancing message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns HttpLoadBalancing
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.HttpLoadBalancing;
+
+ /**
+ * Creates a plain object from a HttpLoadBalancing message. Also converts values to other types if specified.
+ * @param message HttpLoadBalancing
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.HttpLoadBalancing, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this HttpLoadBalancing to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for HttpLoadBalancing
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a HorizontalPodAutoscaling. */
+ interface IHorizontalPodAutoscaling {
+
+ /** HorizontalPodAutoscaling disabled */
+ disabled?: (boolean|null);
+ }
+
+ /** Represents a HorizontalPodAutoscaling. */
+ class HorizontalPodAutoscaling implements IHorizontalPodAutoscaling {
+
+ /**
+ * Constructs a new HorizontalPodAutoscaling.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IHorizontalPodAutoscaling);
+
+ /** HorizontalPodAutoscaling disabled. */
+ public disabled: boolean;
+
+ /**
+ * Creates a new HorizontalPodAutoscaling instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns HorizontalPodAutoscaling instance
+ */
+ public static create(properties?: google.container.v1.IHorizontalPodAutoscaling): google.container.v1.HorizontalPodAutoscaling;
+
+ /**
+ * Encodes the specified HorizontalPodAutoscaling message. Does not implicitly {@link google.container.v1.HorizontalPodAutoscaling.verify|verify} messages.
+ * @param message HorizontalPodAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IHorizontalPodAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified HorizontalPodAutoscaling message, length delimited. Does not implicitly {@link google.container.v1.HorizontalPodAutoscaling.verify|verify} messages.
+ * @param message HorizontalPodAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IHorizontalPodAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a HorizontalPodAutoscaling message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns HorizontalPodAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.HorizontalPodAutoscaling;
+
+ /**
+ * Decodes a HorizontalPodAutoscaling message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns HorizontalPodAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.HorizontalPodAutoscaling;
+
+ /**
+ * Verifies a HorizontalPodAutoscaling message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a HorizontalPodAutoscaling message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns HorizontalPodAutoscaling
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.HorizontalPodAutoscaling;
+
+ /**
+ * Creates a plain object from a HorizontalPodAutoscaling message. Also converts values to other types if specified.
+ * @param message HorizontalPodAutoscaling
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.HorizontalPodAutoscaling, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this HorizontalPodAutoscaling to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for HorizontalPodAutoscaling
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a KubernetesDashboard. */
+ interface IKubernetesDashboard {
+
+ /** KubernetesDashboard disabled */
+ disabled?: (boolean|null);
+ }
+
+ /** Represents a KubernetesDashboard. */
+ class KubernetesDashboard implements IKubernetesDashboard {
+
+ /**
+ * Constructs a new KubernetesDashboard.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IKubernetesDashboard);
+
+ /** KubernetesDashboard disabled. */
+ public disabled: boolean;
+
+ /**
+ * Creates a new KubernetesDashboard instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns KubernetesDashboard instance
+ */
+ public static create(properties?: google.container.v1.IKubernetesDashboard): google.container.v1.KubernetesDashboard;
+
+ /**
+ * Encodes the specified KubernetesDashboard message. Does not implicitly {@link google.container.v1.KubernetesDashboard.verify|verify} messages.
+ * @param message KubernetesDashboard message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IKubernetesDashboard, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified KubernetesDashboard message, length delimited. Does not implicitly {@link google.container.v1.KubernetesDashboard.verify|verify} messages.
+ * @param message KubernetesDashboard message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IKubernetesDashboard, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a KubernetesDashboard message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns KubernetesDashboard
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.KubernetesDashboard;
+
+ /**
+ * Decodes a KubernetesDashboard message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns KubernetesDashboard
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.KubernetesDashboard;
+
+ /**
+ * Verifies a KubernetesDashboard message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a KubernetesDashboard message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns KubernetesDashboard
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.KubernetesDashboard;
+
+ /**
+ * Creates a plain object from a KubernetesDashboard message. Also converts values to other types if specified.
+ * @param message KubernetesDashboard
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.KubernetesDashboard, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this KubernetesDashboard to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for KubernetesDashboard
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NetworkPolicyConfig. */
+ interface INetworkPolicyConfig {
+
+ /** NetworkPolicyConfig disabled */
+ disabled?: (boolean|null);
+ }
+
+ /** Represents a NetworkPolicyConfig. */
+ class NetworkPolicyConfig implements INetworkPolicyConfig {
+
+ /**
+ * Constructs a new NetworkPolicyConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INetworkPolicyConfig);
+
+ /** NetworkPolicyConfig disabled. */
+ public disabled: boolean;
+
+ /**
+ * Creates a new NetworkPolicyConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NetworkPolicyConfig instance
+ */
+ public static create(properties?: google.container.v1.INetworkPolicyConfig): google.container.v1.NetworkPolicyConfig;
+
+ /**
+ * Encodes the specified NetworkPolicyConfig message. Does not implicitly {@link google.container.v1.NetworkPolicyConfig.verify|verify} messages.
+ * @param message NetworkPolicyConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INetworkPolicyConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NetworkPolicyConfig message, length delimited. Does not implicitly {@link google.container.v1.NetworkPolicyConfig.verify|verify} messages.
+ * @param message NetworkPolicyConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INetworkPolicyConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NetworkPolicyConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NetworkPolicyConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NetworkPolicyConfig;
+
+ /**
+ * Decodes a NetworkPolicyConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NetworkPolicyConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NetworkPolicyConfig;
+
+ /**
+ * Verifies a NetworkPolicyConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NetworkPolicyConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NetworkPolicyConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NetworkPolicyConfig;
+
+ /**
+ * Creates a plain object from a NetworkPolicyConfig message. Also converts values to other types if specified.
+ * @param message NetworkPolicyConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NetworkPolicyConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NetworkPolicyConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NetworkPolicyConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DnsCacheConfig. */
+ interface IDnsCacheConfig {
+
+ /** DnsCacheConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a DnsCacheConfig. */
+ class DnsCacheConfig implements IDnsCacheConfig {
+
+ /**
+ * Constructs a new DnsCacheConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDnsCacheConfig);
+
+ /** DnsCacheConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new DnsCacheConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DnsCacheConfig instance
+ */
+ public static create(properties?: google.container.v1.IDnsCacheConfig): google.container.v1.DnsCacheConfig;
+
+ /**
+ * Encodes the specified DnsCacheConfig message. Does not implicitly {@link google.container.v1.DnsCacheConfig.verify|verify} messages.
+ * @param message DnsCacheConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDnsCacheConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DnsCacheConfig message, length delimited. Does not implicitly {@link google.container.v1.DnsCacheConfig.verify|verify} messages.
+ * @param message DnsCacheConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDnsCacheConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DnsCacheConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DnsCacheConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DnsCacheConfig;
+
+ /**
+ * Decodes a DnsCacheConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DnsCacheConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DnsCacheConfig;
+
+ /**
+ * Verifies a DnsCacheConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DnsCacheConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DnsCacheConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DnsCacheConfig;
+
+ /**
+ * Creates a plain object from a DnsCacheConfig message. Also converts values to other types if specified.
+ * @param message DnsCacheConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DnsCacheConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DnsCacheConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DnsCacheConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a PrivateClusterMasterGlobalAccessConfig. */
+ interface IPrivateClusterMasterGlobalAccessConfig {
+
+ /** PrivateClusterMasterGlobalAccessConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a PrivateClusterMasterGlobalAccessConfig. */
+ class PrivateClusterMasterGlobalAccessConfig implements IPrivateClusterMasterGlobalAccessConfig {
+
+ /**
+ * Constructs a new PrivateClusterMasterGlobalAccessConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IPrivateClusterMasterGlobalAccessConfig);
+
+ /** PrivateClusterMasterGlobalAccessConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new PrivateClusterMasterGlobalAccessConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PrivateClusterMasterGlobalAccessConfig instance
+ */
+ public static create(properties?: google.container.v1.IPrivateClusterMasterGlobalAccessConfig): google.container.v1.PrivateClusterMasterGlobalAccessConfig;
+
+ /**
+ * Encodes the specified PrivateClusterMasterGlobalAccessConfig message. Does not implicitly {@link google.container.v1.PrivateClusterMasterGlobalAccessConfig.verify|verify} messages.
+ * @param message PrivateClusterMasterGlobalAccessConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IPrivateClusterMasterGlobalAccessConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PrivateClusterMasterGlobalAccessConfig message, length delimited. Does not implicitly {@link google.container.v1.PrivateClusterMasterGlobalAccessConfig.verify|verify} messages.
+ * @param message PrivateClusterMasterGlobalAccessConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IPrivateClusterMasterGlobalAccessConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PrivateClusterMasterGlobalAccessConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PrivateClusterMasterGlobalAccessConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.PrivateClusterMasterGlobalAccessConfig;
+
+ /**
+ * Decodes a PrivateClusterMasterGlobalAccessConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PrivateClusterMasterGlobalAccessConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.PrivateClusterMasterGlobalAccessConfig;
+
+ /**
+ * Verifies a PrivateClusterMasterGlobalAccessConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PrivateClusterMasterGlobalAccessConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PrivateClusterMasterGlobalAccessConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.PrivateClusterMasterGlobalAccessConfig;
+
+ /**
+ * Creates a plain object from a PrivateClusterMasterGlobalAccessConfig message. Also converts values to other types if specified.
+ * @param message PrivateClusterMasterGlobalAccessConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.PrivateClusterMasterGlobalAccessConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PrivateClusterMasterGlobalAccessConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PrivateClusterMasterGlobalAccessConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a PrivateClusterConfig. */
+ interface IPrivateClusterConfig {
+
+ /** PrivateClusterConfig enablePrivateNodes */
+ enablePrivateNodes?: (boolean|null);
+
+ /** PrivateClusterConfig enablePrivateEndpoint */
+ enablePrivateEndpoint?: (boolean|null);
+
+ /** PrivateClusterConfig masterIpv4CidrBlock */
+ masterIpv4CidrBlock?: (string|null);
+
+ /** PrivateClusterConfig privateEndpoint */
+ privateEndpoint?: (string|null);
+
+ /** PrivateClusterConfig publicEndpoint */
+ publicEndpoint?: (string|null);
+
+ /** PrivateClusterConfig peeringName */
+ peeringName?: (string|null);
+
+ /** PrivateClusterConfig masterGlobalAccessConfig */
+ masterGlobalAccessConfig?: (google.container.v1.IPrivateClusterMasterGlobalAccessConfig|null);
+
+ /** PrivateClusterConfig privateEndpointSubnetwork */
+ privateEndpointSubnetwork?: (string|null);
+ }
+
+ /** Represents a PrivateClusterConfig. */
+ class PrivateClusterConfig implements IPrivateClusterConfig {
+
+ /**
+ * Constructs a new PrivateClusterConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IPrivateClusterConfig);
+
+ /** PrivateClusterConfig enablePrivateNodes. */
+ public enablePrivateNodes: boolean;
+
+ /** PrivateClusterConfig enablePrivateEndpoint. */
+ public enablePrivateEndpoint: boolean;
+
+ /** PrivateClusterConfig masterIpv4CidrBlock. */
+ public masterIpv4CidrBlock: string;
+
+ /** PrivateClusterConfig privateEndpoint. */
+ public privateEndpoint: string;
+
+ /** PrivateClusterConfig publicEndpoint. */
+ public publicEndpoint: string;
+
+ /** PrivateClusterConfig peeringName. */
+ public peeringName: string;
+
+ /** PrivateClusterConfig masterGlobalAccessConfig. */
+ public masterGlobalAccessConfig?: (google.container.v1.IPrivateClusterMasterGlobalAccessConfig|null);
+
+ /** PrivateClusterConfig privateEndpointSubnetwork. */
+ public privateEndpointSubnetwork: string;
+
+ /**
+ * Creates a new PrivateClusterConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PrivateClusterConfig instance
+ */
+ public static create(properties?: google.container.v1.IPrivateClusterConfig): google.container.v1.PrivateClusterConfig;
+
+ /**
+ * Encodes the specified PrivateClusterConfig message. Does not implicitly {@link google.container.v1.PrivateClusterConfig.verify|verify} messages.
+ * @param message PrivateClusterConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IPrivateClusterConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PrivateClusterConfig message, length delimited. Does not implicitly {@link google.container.v1.PrivateClusterConfig.verify|verify} messages.
+ * @param message PrivateClusterConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IPrivateClusterConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PrivateClusterConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PrivateClusterConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.PrivateClusterConfig;
+
+ /**
+ * Decodes a PrivateClusterConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PrivateClusterConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.PrivateClusterConfig;
+
+ /**
+ * Verifies a PrivateClusterConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PrivateClusterConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PrivateClusterConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.PrivateClusterConfig;
+
+ /**
+ * Creates a plain object from a PrivateClusterConfig message. Also converts values to other types if specified.
+ * @param message PrivateClusterConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.PrivateClusterConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PrivateClusterConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PrivateClusterConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuthenticatorGroupsConfig. */
+ interface IAuthenticatorGroupsConfig {
+
+ /** AuthenticatorGroupsConfig enabled */
+ enabled?: (boolean|null);
+
+ /** AuthenticatorGroupsConfig securityGroup */
+ securityGroup?: (string|null);
+ }
+
+ /** Represents an AuthenticatorGroupsConfig. */
+ class AuthenticatorGroupsConfig implements IAuthenticatorGroupsConfig {
+
+ /**
+ * Constructs a new AuthenticatorGroupsConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAuthenticatorGroupsConfig);
+
+ /** AuthenticatorGroupsConfig enabled. */
+ public enabled: boolean;
+
+ /** AuthenticatorGroupsConfig securityGroup. */
+ public securityGroup: string;
+
+ /**
+ * Creates a new AuthenticatorGroupsConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuthenticatorGroupsConfig instance
+ */
+ public static create(properties?: google.container.v1.IAuthenticatorGroupsConfig): google.container.v1.AuthenticatorGroupsConfig;
+
+ /**
+ * Encodes the specified AuthenticatorGroupsConfig message. Does not implicitly {@link google.container.v1.AuthenticatorGroupsConfig.verify|verify} messages.
+ * @param message AuthenticatorGroupsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAuthenticatorGroupsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuthenticatorGroupsConfig message, length delimited. Does not implicitly {@link google.container.v1.AuthenticatorGroupsConfig.verify|verify} messages.
+ * @param message AuthenticatorGroupsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAuthenticatorGroupsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuthenticatorGroupsConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuthenticatorGroupsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AuthenticatorGroupsConfig;
+
+ /**
+ * Decodes an AuthenticatorGroupsConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuthenticatorGroupsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AuthenticatorGroupsConfig;
+
+ /**
+ * Verifies an AuthenticatorGroupsConfig message.
+ * @param message Plain 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 AuthenticatorGroupsConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuthenticatorGroupsConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.AuthenticatorGroupsConfig;
+
+ /**
+ * Creates a plain object from an AuthenticatorGroupsConfig message. Also converts values to other types if specified.
+ * @param message AuthenticatorGroupsConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.AuthenticatorGroupsConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuthenticatorGroupsConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuthenticatorGroupsConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CloudRunConfig. */
+ interface ICloudRunConfig {
+
+ /** CloudRunConfig disabled */
+ disabled?: (boolean|null);
+
+ /** CloudRunConfig loadBalancerType */
+ loadBalancerType?: (google.container.v1.CloudRunConfig.LoadBalancerType|keyof typeof google.container.v1.CloudRunConfig.LoadBalancerType|null);
+ }
+
+ /** Represents a CloudRunConfig. */
+ class CloudRunConfig implements ICloudRunConfig {
+
+ /**
+ * Constructs a new CloudRunConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICloudRunConfig);
+
+ /** CloudRunConfig disabled. */
+ public disabled: boolean;
+
+ /** CloudRunConfig loadBalancerType. */
+ public loadBalancerType: (google.container.v1.CloudRunConfig.LoadBalancerType|keyof typeof google.container.v1.CloudRunConfig.LoadBalancerType);
+
+ /**
+ * Creates a new CloudRunConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CloudRunConfig instance
+ */
+ public static create(properties?: google.container.v1.ICloudRunConfig): google.container.v1.CloudRunConfig;
+
+ /**
+ * Encodes the specified CloudRunConfig message. Does not implicitly {@link google.container.v1.CloudRunConfig.verify|verify} messages.
+ * @param message CloudRunConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICloudRunConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CloudRunConfig message, length delimited. Does not implicitly {@link google.container.v1.CloudRunConfig.verify|verify} messages.
+ * @param message CloudRunConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICloudRunConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CloudRunConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CloudRunConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CloudRunConfig;
+
+ /**
+ * Decodes a CloudRunConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CloudRunConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CloudRunConfig;
+
+ /**
+ * Verifies a CloudRunConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CloudRunConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CloudRunConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CloudRunConfig;
+
+ /**
+ * Creates a plain object from a CloudRunConfig message. Also converts values to other types if specified.
+ * @param message CloudRunConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CloudRunConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CloudRunConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CloudRunConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace CloudRunConfig {
+
+ /** LoadBalancerType enum. */
+ enum LoadBalancerType {
+ LOAD_BALANCER_TYPE_UNSPECIFIED = 0,
+ LOAD_BALANCER_TYPE_EXTERNAL = 1,
+ LOAD_BALANCER_TYPE_INTERNAL = 2
+ }
+ }
+
+ /** Properties of a ConfigConnectorConfig. */
+ interface IConfigConnectorConfig {
+
+ /** ConfigConnectorConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ConfigConnectorConfig. */
+ class ConfigConnectorConfig implements IConfigConnectorConfig {
+
+ /**
+ * Constructs a new ConfigConnectorConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IConfigConnectorConfig);
+
+ /** ConfigConnectorConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ConfigConnectorConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ConfigConnectorConfig instance
+ */
+ public static create(properties?: google.container.v1.IConfigConnectorConfig): google.container.v1.ConfigConnectorConfig;
+
+ /**
+ * Encodes the specified ConfigConnectorConfig message. Does not implicitly {@link google.container.v1.ConfigConnectorConfig.verify|verify} messages.
+ * @param message ConfigConnectorConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IConfigConnectorConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ConfigConnectorConfig message, length delimited. Does not implicitly {@link google.container.v1.ConfigConnectorConfig.verify|verify} messages.
+ * @param message ConfigConnectorConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IConfigConnectorConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ConfigConnectorConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ConfigConnectorConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ConfigConnectorConfig;
+
+ /**
+ * Decodes a ConfigConnectorConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ConfigConnectorConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ConfigConnectorConfig;
+
+ /**
+ * Verifies a ConfigConnectorConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ConfigConnectorConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ConfigConnectorConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ConfigConnectorConfig;
+
+ /**
+ * Creates a plain object from a ConfigConnectorConfig message. Also converts values to other types if specified.
+ * @param message ConfigConnectorConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ConfigConnectorConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ConfigConnectorConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ConfigConnectorConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcePersistentDiskCsiDriverConfig. */
+ interface IGcePersistentDiskCsiDriverConfig {
+
+ /** GcePersistentDiskCsiDriverConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a GcePersistentDiskCsiDriverConfig. */
+ class GcePersistentDiskCsiDriverConfig implements IGcePersistentDiskCsiDriverConfig {
+
+ /**
+ * Constructs a new GcePersistentDiskCsiDriverConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGcePersistentDiskCsiDriverConfig);
+
+ /** GcePersistentDiskCsiDriverConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new GcePersistentDiskCsiDriverConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcePersistentDiskCsiDriverConfig instance
+ */
+ public static create(properties?: google.container.v1.IGcePersistentDiskCsiDriverConfig): google.container.v1.GcePersistentDiskCsiDriverConfig;
+
+ /**
+ * Encodes the specified GcePersistentDiskCsiDriverConfig message. Does not implicitly {@link google.container.v1.GcePersistentDiskCsiDriverConfig.verify|verify} messages.
+ * @param message GcePersistentDiskCsiDriverConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGcePersistentDiskCsiDriverConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcePersistentDiskCsiDriverConfig message, length delimited. Does not implicitly {@link google.container.v1.GcePersistentDiskCsiDriverConfig.verify|verify} messages.
+ * @param message GcePersistentDiskCsiDriverConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGcePersistentDiskCsiDriverConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcePersistentDiskCsiDriverConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcePersistentDiskCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GcePersistentDiskCsiDriverConfig;
+
+ /**
+ * Decodes a GcePersistentDiskCsiDriverConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcePersistentDiskCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GcePersistentDiskCsiDriverConfig;
+
+ /**
+ * Verifies a GcePersistentDiskCsiDriverConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcePersistentDiskCsiDriverConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcePersistentDiskCsiDriverConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GcePersistentDiskCsiDriverConfig;
+
+ /**
+ * Creates a plain object from a GcePersistentDiskCsiDriverConfig message. Also converts values to other types if specified.
+ * @param message GcePersistentDiskCsiDriverConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GcePersistentDiskCsiDriverConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcePersistentDiskCsiDriverConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcePersistentDiskCsiDriverConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GcpFilestoreCsiDriverConfig. */
+ interface IGcpFilestoreCsiDriverConfig {
+
+ /** GcpFilestoreCsiDriverConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a GcpFilestoreCsiDriverConfig. */
+ class GcpFilestoreCsiDriverConfig implements IGcpFilestoreCsiDriverConfig {
+
+ /**
+ * Constructs a new GcpFilestoreCsiDriverConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGcpFilestoreCsiDriverConfig);
+
+ /** GcpFilestoreCsiDriverConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new GcpFilestoreCsiDriverConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GcpFilestoreCsiDriverConfig instance
+ */
+ public static create(properties?: google.container.v1.IGcpFilestoreCsiDriverConfig): google.container.v1.GcpFilestoreCsiDriverConfig;
+
+ /**
+ * Encodes the specified GcpFilestoreCsiDriverConfig message. Does not implicitly {@link google.container.v1.GcpFilestoreCsiDriverConfig.verify|verify} messages.
+ * @param message GcpFilestoreCsiDriverConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGcpFilestoreCsiDriverConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GcpFilestoreCsiDriverConfig message, length delimited. Does not implicitly {@link google.container.v1.GcpFilestoreCsiDriverConfig.verify|verify} messages.
+ * @param message GcpFilestoreCsiDriverConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGcpFilestoreCsiDriverConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GcpFilestoreCsiDriverConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GcpFilestoreCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GcpFilestoreCsiDriverConfig;
+
+ /**
+ * Decodes a GcpFilestoreCsiDriverConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GcpFilestoreCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GcpFilestoreCsiDriverConfig;
+
+ /**
+ * Verifies a GcpFilestoreCsiDriverConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GcpFilestoreCsiDriverConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GcpFilestoreCsiDriverConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GcpFilestoreCsiDriverConfig;
+
+ /**
+ * Creates a plain object from a GcpFilestoreCsiDriverConfig message. Also converts values to other types if specified.
+ * @param message GcpFilestoreCsiDriverConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GcpFilestoreCsiDriverConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GcpFilestoreCsiDriverConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GcpFilestoreCsiDriverConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GkeBackupAgentConfig. */
+ interface IGkeBackupAgentConfig {
+
+ /** GkeBackupAgentConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a GkeBackupAgentConfig. */
+ class GkeBackupAgentConfig implements IGkeBackupAgentConfig {
+
+ /**
+ * Constructs a new GkeBackupAgentConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGkeBackupAgentConfig);
+
+ /** GkeBackupAgentConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new GkeBackupAgentConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GkeBackupAgentConfig instance
+ */
+ public static create(properties?: google.container.v1.IGkeBackupAgentConfig): google.container.v1.GkeBackupAgentConfig;
+
+ /**
+ * Encodes the specified GkeBackupAgentConfig message. Does not implicitly {@link google.container.v1.GkeBackupAgentConfig.verify|verify} messages.
+ * @param message GkeBackupAgentConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGkeBackupAgentConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GkeBackupAgentConfig message, length delimited. Does not implicitly {@link google.container.v1.GkeBackupAgentConfig.verify|verify} messages.
+ * @param message GkeBackupAgentConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGkeBackupAgentConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GkeBackupAgentConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GkeBackupAgentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GkeBackupAgentConfig;
+
+ /**
+ * Decodes a GkeBackupAgentConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GkeBackupAgentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GkeBackupAgentConfig;
+
+ /**
+ * Verifies a GkeBackupAgentConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GkeBackupAgentConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GkeBackupAgentConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GkeBackupAgentConfig;
+
+ /**
+ * Creates a plain object from a GkeBackupAgentConfig message. Also converts values to other types if specified.
+ * @param message GkeBackupAgentConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GkeBackupAgentConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GkeBackupAgentConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GkeBackupAgentConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MasterAuthorizedNetworksConfig. */
+ interface IMasterAuthorizedNetworksConfig {
+
+ /** MasterAuthorizedNetworksConfig enabled */
+ enabled?: (boolean|null);
+
+ /** MasterAuthorizedNetworksConfig cidrBlocks */
+ cidrBlocks?: (google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock[]|null);
+
+ /** MasterAuthorizedNetworksConfig gcpPublicCidrsAccessEnabled */
+ gcpPublicCidrsAccessEnabled?: (boolean|null);
+ }
+
+ /** Represents a MasterAuthorizedNetworksConfig. */
+ class MasterAuthorizedNetworksConfig implements IMasterAuthorizedNetworksConfig {
+
+ /**
+ * Constructs a new MasterAuthorizedNetworksConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMasterAuthorizedNetworksConfig);
+
+ /** MasterAuthorizedNetworksConfig enabled. */
+ public enabled: boolean;
+
+ /** MasterAuthorizedNetworksConfig cidrBlocks. */
+ public cidrBlocks: google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock[];
+
+ /** MasterAuthorizedNetworksConfig gcpPublicCidrsAccessEnabled. */
+ public gcpPublicCidrsAccessEnabled?: (boolean|null);
+
+ /** MasterAuthorizedNetworksConfig _gcpPublicCidrsAccessEnabled. */
+ public _gcpPublicCidrsAccessEnabled?: "gcpPublicCidrsAccessEnabled";
+
+ /**
+ * Creates a new MasterAuthorizedNetworksConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MasterAuthorizedNetworksConfig instance
+ */
+ public static create(properties?: google.container.v1.IMasterAuthorizedNetworksConfig): google.container.v1.MasterAuthorizedNetworksConfig;
+
+ /**
+ * Encodes the specified MasterAuthorizedNetworksConfig message. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.verify|verify} messages.
+ * @param message MasterAuthorizedNetworksConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMasterAuthorizedNetworksConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MasterAuthorizedNetworksConfig message, length delimited. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.verify|verify} messages.
+ * @param message MasterAuthorizedNetworksConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMasterAuthorizedNetworksConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MasterAuthorizedNetworksConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MasterAuthorizedNetworksConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MasterAuthorizedNetworksConfig;
+
+ /**
+ * Decodes a MasterAuthorizedNetworksConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MasterAuthorizedNetworksConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MasterAuthorizedNetworksConfig;
+
+ /**
+ * Verifies a MasterAuthorizedNetworksConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MasterAuthorizedNetworksConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MasterAuthorizedNetworksConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MasterAuthorizedNetworksConfig;
+
+ /**
+ * Creates a plain object from a MasterAuthorizedNetworksConfig message. Also converts values to other types if specified.
+ * @param message MasterAuthorizedNetworksConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MasterAuthorizedNetworksConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MasterAuthorizedNetworksConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MasterAuthorizedNetworksConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MasterAuthorizedNetworksConfig {
+
+ /** Properties of a CidrBlock. */
+ interface ICidrBlock {
+
+ /** CidrBlock displayName */
+ displayName?: (string|null);
+
+ /** CidrBlock cidrBlock */
+ cidrBlock?: (string|null);
+ }
+
+ /** Represents a CidrBlock. */
+ class CidrBlock implements ICidrBlock {
+
+ /**
+ * Constructs a new CidrBlock.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock);
+
+ /** CidrBlock displayName. */
+ public displayName: string;
+
+ /** CidrBlock cidrBlock. */
+ public cidrBlock: string;
+
+ /**
+ * Creates a new CidrBlock instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CidrBlock instance
+ */
+ public static create(properties?: google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock): google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock;
+
+ /**
+ * Encodes the specified CidrBlock message. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.verify|verify} messages.
+ * @param message CidrBlock message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CidrBlock message, length delimited. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.verify|verify} messages.
+ * @param message CidrBlock message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CidrBlock message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CidrBlock
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock;
+
+ /**
+ * Decodes a CidrBlock message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CidrBlock
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock;
+
+ /**
+ * Verifies a CidrBlock message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CidrBlock message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CidrBlock
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock;
+
+ /**
+ * Creates a plain object from a CidrBlock message. Also converts values to other types if specified.
+ * @param message CidrBlock
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CidrBlock to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CidrBlock
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a LegacyAbac. */
+ interface ILegacyAbac {
+
+ /** LegacyAbac enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a LegacyAbac. */
+ class LegacyAbac implements ILegacyAbac {
+
+ /**
+ * Constructs a new LegacyAbac.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ILegacyAbac);
+
+ /** LegacyAbac enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new LegacyAbac instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LegacyAbac instance
+ */
+ public static create(properties?: google.container.v1.ILegacyAbac): google.container.v1.LegacyAbac;
+
+ /**
+ * Encodes the specified LegacyAbac message. Does not implicitly {@link google.container.v1.LegacyAbac.verify|verify} messages.
+ * @param message LegacyAbac message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ILegacyAbac, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LegacyAbac message, length delimited. Does not implicitly {@link google.container.v1.LegacyAbac.verify|verify} messages.
+ * @param message LegacyAbac message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ILegacyAbac, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LegacyAbac message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LegacyAbac
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.LegacyAbac;
+
+ /**
+ * Decodes a LegacyAbac message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LegacyAbac
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.LegacyAbac;
+
+ /**
+ * Verifies a LegacyAbac message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LegacyAbac message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LegacyAbac
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.LegacyAbac;
+
+ /**
+ * Creates a plain object from a LegacyAbac message. Also converts values to other types if specified.
+ * @param message LegacyAbac
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.LegacyAbac, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LegacyAbac to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LegacyAbac
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NetworkPolicy. */
+ interface INetworkPolicy {
+
+ /** NetworkPolicy provider */
+ provider?: (google.container.v1.NetworkPolicy.Provider|keyof typeof google.container.v1.NetworkPolicy.Provider|null);
+
+ /** NetworkPolicy enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a NetworkPolicy. */
+ class NetworkPolicy implements INetworkPolicy {
+
+ /**
+ * Constructs a new NetworkPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INetworkPolicy);
+
+ /** NetworkPolicy provider. */
+ public provider: (google.container.v1.NetworkPolicy.Provider|keyof typeof google.container.v1.NetworkPolicy.Provider);
+
+ /** NetworkPolicy enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new NetworkPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NetworkPolicy instance
+ */
+ public static create(properties?: google.container.v1.INetworkPolicy): google.container.v1.NetworkPolicy;
+
+ /**
+ * Encodes the specified NetworkPolicy message. Does not implicitly {@link google.container.v1.NetworkPolicy.verify|verify} messages.
+ * @param message NetworkPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INetworkPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NetworkPolicy message, length delimited. Does not implicitly {@link google.container.v1.NetworkPolicy.verify|verify} messages.
+ * @param message NetworkPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INetworkPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NetworkPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NetworkPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NetworkPolicy;
+
+ /**
+ * Decodes a NetworkPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NetworkPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NetworkPolicy;
+
+ /**
+ * Verifies a NetworkPolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NetworkPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NetworkPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NetworkPolicy;
+
+ /**
+ * Creates a plain object from a NetworkPolicy message. Also converts values to other types if specified.
+ * @param message NetworkPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NetworkPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NetworkPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NetworkPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NetworkPolicy {
+
+ /** Provider enum. */
+ enum Provider {
+ PROVIDER_UNSPECIFIED = 0,
+ CALICO = 1
+ }
+ }
+
+ /** Properties of a BinaryAuthorization. */
+ interface IBinaryAuthorization {
+
+ /** BinaryAuthorization enabled */
+ enabled?: (boolean|null);
+
+ /** BinaryAuthorization evaluationMode */
+ evaluationMode?: (google.container.v1.BinaryAuthorization.EvaluationMode|keyof typeof google.container.v1.BinaryAuthorization.EvaluationMode|null);
+ }
+
+ /** Represents a BinaryAuthorization. */
+ class BinaryAuthorization implements IBinaryAuthorization {
+
+ /**
+ * Constructs a new BinaryAuthorization.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IBinaryAuthorization);
+
+ /** BinaryAuthorization enabled. */
+ public enabled: boolean;
+
+ /** BinaryAuthorization evaluationMode. */
+ public evaluationMode: (google.container.v1.BinaryAuthorization.EvaluationMode|keyof typeof google.container.v1.BinaryAuthorization.EvaluationMode);
+
+ /**
+ * Creates a new BinaryAuthorization instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BinaryAuthorization instance
+ */
+ public static create(properties?: google.container.v1.IBinaryAuthorization): google.container.v1.BinaryAuthorization;
+
+ /**
+ * Encodes the specified BinaryAuthorization message. Does not implicitly {@link google.container.v1.BinaryAuthorization.verify|verify} messages.
+ * @param message BinaryAuthorization message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IBinaryAuthorization, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BinaryAuthorization message, length delimited. Does not implicitly {@link google.container.v1.BinaryAuthorization.verify|verify} messages.
+ * @param message BinaryAuthorization message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IBinaryAuthorization, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BinaryAuthorization message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BinaryAuthorization
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.BinaryAuthorization;
+
+ /**
+ * Decodes a BinaryAuthorization message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BinaryAuthorization
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.BinaryAuthorization;
+
+ /**
+ * Verifies a BinaryAuthorization message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BinaryAuthorization message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BinaryAuthorization
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.BinaryAuthorization;
+
+ /**
+ * Creates a plain object from a BinaryAuthorization message. Also converts values to other types if specified.
+ * @param message BinaryAuthorization
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.BinaryAuthorization, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BinaryAuthorization to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BinaryAuthorization
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BinaryAuthorization {
+
+ /** EvaluationMode enum. */
+ enum EvaluationMode {
+ EVALUATION_MODE_UNSPECIFIED = 0,
+ DISABLED = 1,
+ PROJECT_SINGLETON_POLICY_ENFORCE = 2
+ }
+ }
+
+ /** Properties of a IPAllocationPolicy. */
+ interface IIPAllocationPolicy {
+
+ /** IPAllocationPolicy useIpAliases */
+ useIpAliases?: (boolean|null);
+
+ /** IPAllocationPolicy createSubnetwork */
+ createSubnetwork?: (boolean|null);
+
+ /** IPAllocationPolicy subnetworkName */
+ subnetworkName?: (string|null);
+
+ /** IPAllocationPolicy clusterIpv4Cidr */
+ clusterIpv4Cidr?: (string|null);
+
+ /** IPAllocationPolicy nodeIpv4Cidr */
+ nodeIpv4Cidr?: (string|null);
+
+ /** IPAllocationPolicy servicesIpv4Cidr */
+ servicesIpv4Cidr?: (string|null);
+
+ /** IPAllocationPolicy clusterSecondaryRangeName */
+ clusterSecondaryRangeName?: (string|null);
+
+ /** IPAllocationPolicy servicesSecondaryRangeName */
+ servicesSecondaryRangeName?: (string|null);
+
+ /** IPAllocationPolicy clusterIpv4CidrBlock */
+ clusterIpv4CidrBlock?: (string|null);
+
+ /** IPAllocationPolicy nodeIpv4CidrBlock */
+ nodeIpv4CidrBlock?: (string|null);
+
+ /** IPAllocationPolicy servicesIpv4CidrBlock */
+ servicesIpv4CidrBlock?: (string|null);
+
+ /** IPAllocationPolicy tpuIpv4CidrBlock */
+ tpuIpv4CidrBlock?: (string|null);
+
+ /** IPAllocationPolicy useRoutes */
+ useRoutes?: (boolean|null);
+
+ /** IPAllocationPolicy stackType */
+ stackType?: (google.container.v1.StackType|keyof typeof google.container.v1.StackType|null);
+
+ /** IPAllocationPolicy ipv6AccessType */
+ ipv6AccessType?: (google.container.v1.IPv6AccessType|keyof typeof google.container.v1.IPv6AccessType|null);
+ }
+
+ /** Represents a IPAllocationPolicy. */
+ class IPAllocationPolicy implements IIPAllocationPolicy {
+
+ /**
+ * Constructs a new IPAllocationPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IIPAllocationPolicy);
+
+ /** IPAllocationPolicy useIpAliases. */
+ public useIpAliases: boolean;
+
+ /** IPAllocationPolicy createSubnetwork. */
+ public createSubnetwork: boolean;
+
+ /** IPAllocationPolicy subnetworkName. */
+ public subnetworkName: string;
+
+ /** IPAllocationPolicy clusterIpv4Cidr. */
+ public clusterIpv4Cidr: string;
+
+ /** IPAllocationPolicy nodeIpv4Cidr. */
+ public nodeIpv4Cidr: string;
+
+ /** IPAllocationPolicy servicesIpv4Cidr. */
+ public servicesIpv4Cidr: string;
+
+ /** IPAllocationPolicy clusterSecondaryRangeName. */
+ public clusterSecondaryRangeName: string;
+
+ /** IPAllocationPolicy servicesSecondaryRangeName. */
+ public servicesSecondaryRangeName: string;
+
+ /** IPAllocationPolicy clusterIpv4CidrBlock. */
+ public clusterIpv4CidrBlock: string;
+
+ /** IPAllocationPolicy nodeIpv4CidrBlock. */
+ public nodeIpv4CidrBlock: string;
+
+ /** IPAllocationPolicy servicesIpv4CidrBlock. */
+ public servicesIpv4CidrBlock: string;
+
+ /** IPAllocationPolicy tpuIpv4CidrBlock. */
+ public tpuIpv4CidrBlock: string;
+
+ /** IPAllocationPolicy useRoutes. */
+ public useRoutes: boolean;
+
+ /** IPAllocationPolicy stackType. */
+ public stackType: (google.container.v1.StackType|keyof typeof google.container.v1.StackType);
+
+ /** IPAllocationPolicy ipv6AccessType. */
+ public ipv6AccessType: (google.container.v1.IPv6AccessType|keyof typeof google.container.v1.IPv6AccessType);
+
+ /**
+ * Creates a new IPAllocationPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IPAllocationPolicy instance
+ */
+ public static create(properties?: google.container.v1.IIPAllocationPolicy): google.container.v1.IPAllocationPolicy;
+
+ /**
+ * Encodes the specified IPAllocationPolicy message. Does not implicitly {@link google.container.v1.IPAllocationPolicy.verify|verify} messages.
+ * @param message IPAllocationPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IIPAllocationPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IPAllocationPolicy message, length delimited. Does not implicitly {@link google.container.v1.IPAllocationPolicy.verify|verify} messages.
+ * @param message IPAllocationPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IIPAllocationPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a IPAllocationPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IPAllocationPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.IPAllocationPolicy;
+
+ /**
+ * Decodes a IPAllocationPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IPAllocationPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.IPAllocationPolicy;
+
+ /**
+ * Verifies a IPAllocationPolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a IPAllocationPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IPAllocationPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.IPAllocationPolicy;
+
+ /**
+ * Creates a plain object from a IPAllocationPolicy message. Also converts values to other types if specified.
+ * @param message IPAllocationPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.IPAllocationPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IPAllocationPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IPAllocationPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Cluster. */
+ interface ICluster {
+
+ /** Cluster name */
+ name?: (string|null);
+
+ /** Cluster description */
+ description?: (string|null);
+
+ /** Cluster initialNodeCount */
+ initialNodeCount?: (number|null);
+
+ /** Cluster nodeConfig */
+ nodeConfig?: (google.container.v1.INodeConfig|null);
+
+ /** Cluster masterAuth */
+ masterAuth?: (google.container.v1.IMasterAuth|null);
+
+ /** Cluster loggingService */
+ loggingService?: (string|null);
+
+ /** Cluster monitoringService */
+ monitoringService?: (string|null);
+
+ /** Cluster network */
+ network?: (string|null);
+
+ /** Cluster clusterIpv4Cidr */
+ clusterIpv4Cidr?: (string|null);
+
+ /** Cluster addonsConfig */
+ addonsConfig?: (google.container.v1.IAddonsConfig|null);
+
+ /** Cluster subnetwork */
+ subnetwork?: (string|null);
+
+ /** Cluster nodePools */
+ nodePools?: (google.container.v1.INodePool[]|null);
+
+ /** Cluster locations */
+ locations?: (string[]|null);
+
+ /** Cluster enableKubernetesAlpha */
+ enableKubernetesAlpha?: (boolean|null);
+
+ /** Cluster resourceLabels */
+ resourceLabels?: ({ [k: string]: string }|null);
+
+ /** Cluster labelFingerprint */
+ labelFingerprint?: (string|null);
+
+ /** Cluster legacyAbac */
+ legacyAbac?: (google.container.v1.ILegacyAbac|null);
+
+ /** Cluster networkPolicy */
+ networkPolicy?: (google.container.v1.INetworkPolicy|null);
+
+ /** Cluster ipAllocationPolicy */
+ ipAllocationPolicy?: (google.container.v1.IIPAllocationPolicy|null);
+
+ /** Cluster masterAuthorizedNetworksConfig */
+ masterAuthorizedNetworksConfig?: (google.container.v1.IMasterAuthorizedNetworksConfig|null);
+
+ /** Cluster maintenancePolicy */
+ maintenancePolicy?: (google.container.v1.IMaintenancePolicy|null);
+
+ /** Cluster binaryAuthorization */
+ binaryAuthorization?: (google.container.v1.IBinaryAuthorization|null);
+
+ /** Cluster autoscaling */
+ autoscaling?: (google.container.v1.IClusterAutoscaling|null);
+
+ /** Cluster networkConfig */
+ networkConfig?: (google.container.v1.INetworkConfig|null);
+
+ /** Cluster defaultMaxPodsConstraint */
+ defaultMaxPodsConstraint?: (google.container.v1.IMaxPodsConstraint|null);
+
+ /** Cluster resourceUsageExportConfig */
+ resourceUsageExportConfig?: (google.container.v1.IResourceUsageExportConfig|null);
+
+ /** Cluster authenticatorGroupsConfig */
+ authenticatorGroupsConfig?: (google.container.v1.IAuthenticatorGroupsConfig|null);
+
+ /** Cluster privateClusterConfig */
+ privateClusterConfig?: (google.container.v1.IPrivateClusterConfig|null);
+
+ /** Cluster databaseEncryption */
+ databaseEncryption?: (google.container.v1.IDatabaseEncryption|null);
+
+ /** Cluster verticalPodAutoscaling */
+ verticalPodAutoscaling?: (google.container.v1.IVerticalPodAutoscaling|null);
+
+ /** Cluster shieldedNodes */
+ shieldedNodes?: (google.container.v1.IShieldedNodes|null);
+
+ /** Cluster releaseChannel */
+ releaseChannel?: (google.container.v1.IReleaseChannel|null);
+
+ /** Cluster workloadIdentityConfig */
+ workloadIdentityConfig?: (google.container.v1.IWorkloadIdentityConfig|null);
+
+ /** Cluster meshCertificates */
+ meshCertificates?: (google.container.v1.IMeshCertificates|null);
+
+ /** Cluster costManagementConfig */
+ costManagementConfig?: (google.container.v1.ICostManagementConfig|null);
+
+ /** Cluster notificationConfig */
+ notificationConfig?: (google.container.v1.INotificationConfig|null);
+
+ /** Cluster confidentialNodes */
+ confidentialNodes?: (google.container.v1.IConfidentialNodes|null);
+
+ /** Cluster identityServiceConfig */
+ identityServiceConfig?: (google.container.v1.IIdentityServiceConfig|null);
+
+ /** Cluster selfLink */
+ selfLink?: (string|null);
+
+ /** Cluster zone */
+ zone?: (string|null);
+
+ /** Cluster endpoint */
+ endpoint?: (string|null);
+
+ /** Cluster initialClusterVersion */
+ initialClusterVersion?: (string|null);
+
+ /** Cluster currentMasterVersion */
+ currentMasterVersion?: (string|null);
+
+ /** Cluster currentNodeVersion */
+ currentNodeVersion?: (string|null);
+
+ /** Cluster createTime */
+ createTime?: (string|null);
+
+ /** Cluster status */
+ status?: (google.container.v1.Cluster.Status|keyof typeof google.container.v1.Cluster.Status|null);
+
+ /** Cluster statusMessage */
+ statusMessage?: (string|null);
+
+ /** Cluster nodeIpv4CidrSize */
+ nodeIpv4CidrSize?: (number|null);
+
+ /** Cluster servicesIpv4Cidr */
+ servicesIpv4Cidr?: (string|null);
+
+ /** Cluster instanceGroupUrls */
+ instanceGroupUrls?: (string[]|null);
+
+ /** Cluster currentNodeCount */
+ currentNodeCount?: (number|null);
+
+ /** Cluster expireTime */
+ expireTime?: (string|null);
+
+ /** Cluster location */
+ location?: (string|null);
+
+ /** Cluster enableTpu */
+ enableTpu?: (boolean|null);
+
+ /** Cluster tpuIpv4CidrBlock */
+ tpuIpv4CidrBlock?: (string|null);
+
+ /** Cluster conditions */
+ conditions?: (google.container.v1.IStatusCondition[]|null);
+
+ /** Cluster autopilot */
+ autopilot?: (google.container.v1.IAutopilot|null);
+
+ /** Cluster id */
+ id?: (string|null);
+
+ /** Cluster nodePoolDefaults */
+ nodePoolDefaults?: (google.container.v1.INodePoolDefaults|null);
+
+ /** Cluster loggingConfig */
+ loggingConfig?: (google.container.v1.ILoggingConfig|null);
+
+ /** Cluster monitoringConfig */
+ monitoringConfig?: (google.container.v1.IMonitoringConfig|null);
+
+ /** Cluster nodePoolAutoConfig */
+ nodePoolAutoConfig?: (google.container.v1.INodePoolAutoConfig|null);
+ }
+
+ /** Represents a Cluster. */
+ class Cluster implements ICluster {
+
+ /**
+ * Constructs a new Cluster.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICluster);
+
+ /** Cluster name. */
+ public name: string;
+
+ /** Cluster description. */
+ public description: string;
+
+ /** Cluster initialNodeCount. */
+ public initialNodeCount: number;
+
+ /** Cluster nodeConfig. */
+ public nodeConfig?: (google.container.v1.INodeConfig|null);
+
+ /** Cluster masterAuth. */
+ public masterAuth?: (google.container.v1.IMasterAuth|null);
+
+ /** Cluster loggingService. */
+ public loggingService: string;
+
+ /** Cluster monitoringService. */
+ public monitoringService: string;
+
+ /** Cluster network. */
+ public network: string;
+
+ /** Cluster clusterIpv4Cidr. */
+ public clusterIpv4Cidr: string;
+
+ /** Cluster addonsConfig. */
+ public addonsConfig?: (google.container.v1.IAddonsConfig|null);
+
+ /** Cluster subnetwork. */
+ public subnetwork: string;
+
+ /** Cluster nodePools. */
+ public nodePools: google.container.v1.INodePool[];
+
+ /** Cluster locations. */
+ public locations: string[];
+
+ /** Cluster enableKubernetesAlpha. */
+ public enableKubernetesAlpha: boolean;
+
+ /** Cluster resourceLabels. */
+ public resourceLabels: { [k: string]: string };
+
+ /** Cluster labelFingerprint. */
+ public labelFingerprint: string;
+
+ /** Cluster legacyAbac. */
+ public legacyAbac?: (google.container.v1.ILegacyAbac|null);
+
+ /** Cluster networkPolicy. */
+ public networkPolicy?: (google.container.v1.INetworkPolicy|null);
+
+ /** Cluster ipAllocationPolicy. */
+ public ipAllocationPolicy?: (google.container.v1.IIPAllocationPolicy|null);
+
+ /** Cluster masterAuthorizedNetworksConfig. */
+ public masterAuthorizedNetworksConfig?: (google.container.v1.IMasterAuthorizedNetworksConfig|null);
+
+ /** Cluster maintenancePolicy. */
+ public maintenancePolicy?: (google.container.v1.IMaintenancePolicy|null);
+
+ /** Cluster binaryAuthorization. */
+ public binaryAuthorization?: (google.container.v1.IBinaryAuthorization|null);
+
+ /** Cluster autoscaling. */
+ public autoscaling?: (google.container.v1.IClusterAutoscaling|null);
+
+ /** Cluster networkConfig. */
+ public networkConfig?: (google.container.v1.INetworkConfig|null);
+
+ /** Cluster defaultMaxPodsConstraint. */
+ public defaultMaxPodsConstraint?: (google.container.v1.IMaxPodsConstraint|null);
+
+ /** Cluster resourceUsageExportConfig. */
+ public resourceUsageExportConfig?: (google.container.v1.IResourceUsageExportConfig|null);
+
+ /** Cluster authenticatorGroupsConfig. */
+ public authenticatorGroupsConfig?: (google.container.v1.IAuthenticatorGroupsConfig|null);
+
+ /** Cluster privateClusterConfig. */
+ public privateClusterConfig?: (google.container.v1.IPrivateClusterConfig|null);
+
+ /** Cluster databaseEncryption. */
+ public databaseEncryption?: (google.container.v1.IDatabaseEncryption|null);
+
+ /** Cluster verticalPodAutoscaling. */
+ public verticalPodAutoscaling?: (google.container.v1.IVerticalPodAutoscaling|null);
+
+ /** Cluster shieldedNodes. */
+ public shieldedNodes?: (google.container.v1.IShieldedNodes|null);
+
+ /** Cluster releaseChannel. */
+ public releaseChannel?: (google.container.v1.IReleaseChannel|null);
+
+ /** Cluster workloadIdentityConfig. */
+ public workloadIdentityConfig?: (google.container.v1.IWorkloadIdentityConfig|null);
+
+ /** Cluster meshCertificates. */
+ public meshCertificates?: (google.container.v1.IMeshCertificates|null);
+
+ /** Cluster costManagementConfig. */
+ public costManagementConfig?: (google.container.v1.ICostManagementConfig|null);
+
+ /** Cluster notificationConfig. */
+ public notificationConfig?: (google.container.v1.INotificationConfig|null);
+
+ /** Cluster confidentialNodes. */
+ public confidentialNodes?: (google.container.v1.IConfidentialNodes|null);
+
+ /** Cluster identityServiceConfig. */
+ public identityServiceConfig?: (google.container.v1.IIdentityServiceConfig|null);
+
+ /** Cluster selfLink. */
+ public selfLink: string;
+
+ /** Cluster zone. */
+ public zone: string;
+
+ /** Cluster endpoint. */
+ public endpoint: string;
+
+ /** Cluster initialClusterVersion. */
+ public initialClusterVersion: string;
+
+ /** Cluster currentMasterVersion. */
+ public currentMasterVersion: string;
+
+ /** Cluster currentNodeVersion. */
+ public currentNodeVersion: string;
+
+ /** Cluster createTime. */
+ public createTime: string;
+
+ /** Cluster status. */
+ public status: (google.container.v1.Cluster.Status|keyof typeof google.container.v1.Cluster.Status);
+
+ /** Cluster statusMessage. */
+ public statusMessage: string;
+
+ /** Cluster nodeIpv4CidrSize. */
+ public nodeIpv4CidrSize: number;
+
+ /** Cluster servicesIpv4Cidr. */
+ public servicesIpv4Cidr: string;
+
+ /** Cluster instanceGroupUrls. */
+ public instanceGroupUrls: string[];
+
+ /** Cluster currentNodeCount. */
+ public currentNodeCount: number;
+
+ /** Cluster expireTime. */
+ public expireTime: string;
+
+ /** Cluster location. */
+ public location: string;
+
+ /** Cluster enableTpu. */
+ public enableTpu: boolean;
+
+ /** Cluster tpuIpv4CidrBlock. */
+ public tpuIpv4CidrBlock: string;
+
+ /** Cluster conditions. */
+ public conditions: google.container.v1.IStatusCondition[];
+
+ /** Cluster autopilot. */
+ public autopilot?: (google.container.v1.IAutopilot|null);
+
+ /** Cluster id. */
+ public id: string;
+
+ /** Cluster nodePoolDefaults. */
+ public nodePoolDefaults?: (google.container.v1.INodePoolDefaults|null);
+
+ /** Cluster loggingConfig. */
+ public loggingConfig?: (google.container.v1.ILoggingConfig|null);
+
+ /** Cluster monitoringConfig. */
+ public monitoringConfig?: (google.container.v1.IMonitoringConfig|null);
+
+ /** Cluster nodePoolAutoConfig. */
+ public nodePoolAutoConfig?: (google.container.v1.INodePoolAutoConfig|null);
+
+ /** Cluster _nodePoolDefaults. */
+ public _nodePoolDefaults?: "nodePoolDefaults";
+
+ /**
+ * Creates a new Cluster instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Cluster instance
+ */
+ public static create(properties?: google.container.v1.ICluster): google.container.v1.Cluster;
+
+ /**
+ * Encodes the specified Cluster message. Does not implicitly {@link google.container.v1.Cluster.verify|verify} messages.
+ * @param message Cluster message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICluster, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Cluster message, length delimited. Does not implicitly {@link google.container.v1.Cluster.verify|verify} messages.
+ * @param message Cluster message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICluster, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Cluster message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Cluster
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.Cluster;
+
+ /**
+ * Decodes a Cluster message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Cluster
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.Cluster;
+
+ /**
+ * Verifies a Cluster message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Cluster message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Cluster
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.Cluster;
+
+ /**
+ * Creates a plain object from a Cluster message. Also converts values to other types if specified.
+ * @param message Cluster
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.Cluster, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Cluster to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Cluster
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Cluster {
+
+ /** Status enum. */
+ enum Status {
+ STATUS_UNSPECIFIED = 0,
+ PROVISIONING = 1,
+ RUNNING = 2,
+ RECONCILING = 3,
+ STOPPING = 4,
+ ERROR = 5,
+ DEGRADED = 6
+ }
+ }
+
+ /** Properties of a NodePoolAutoConfig. */
+ interface INodePoolAutoConfig {
+
+ /** NodePoolAutoConfig networkTags */
+ networkTags?: (google.container.v1.INetworkTags|null);
+ }
+
+ /** Represents a NodePoolAutoConfig. */
+ class NodePoolAutoConfig implements INodePoolAutoConfig {
+
+ /**
+ * Constructs a new NodePoolAutoConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodePoolAutoConfig);
+
+ /** NodePoolAutoConfig networkTags. */
+ public networkTags?: (google.container.v1.INetworkTags|null);
+
+ /**
+ * Creates a new NodePoolAutoConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodePoolAutoConfig instance
+ */
+ public static create(properties?: google.container.v1.INodePoolAutoConfig): google.container.v1.NodePoolAutoConfig;
+
+ /**
+ * Encodes the specified NodePoolAutoConfig message. Does not implicitly {@link google.container.v1.NodePoolAutoConfig.verify|verify} messages.
+ * @param message NodePoolAutoConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodePoolAutoConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodePoolAutoConfig message, length delimited. Does not implicitly {@link google.container.v1.NodePoolAutoConfig.verify|verify} messages.
+ * @param message NodePoolAutoConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodePoolAutoConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodePoolAutoConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodePoolAutoConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePoolAutoConfig;
+
+ /**
+ * Decodes a NodePoolAutoConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodePoolAutoConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePoolAutoConfig;
+
+ /**
+ * Verifies a NodePoolAutoConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodePoolAutoConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodePoolAutoConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePoolAutoConfig;
+
+ /**
+ * Creates a plain object from a NodePoolAutoConfig message. Also converts values to other types if specified.
+ * @param message NodePoolAutoConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePoolAutoConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodePoolAutoConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodePoolAutoConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodePoolDefaults. */
+ interface INodePoolDefaults {
+
+ /** NodePoolDefaults nodeConfigDefaults */
+ nodeConfigDefaults?: (google.container.v1.INodeConfigDefaults|null);
+ }
+
+ /** Represents a NodePoolDefaults. */
+ class NodePoolDefaults implements INodePoolDefaults {
+
+ /**
+ * Constructs a new NodePoolDefaults.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodePoolDefaults);
+
+ /** NodePoolDefaults nodeConfigDefaults. */
+ public nodeConfigDefaults?: (google.container.v1.INodeConfigDefaults|null);
+
+ /**
+ * Creates a new NodePoolDefaults instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodePoolDefaults instance
+ */
+ public static create(properties?: google.container.v1.INodePoolDefaults): google.container.v1.NodePoolDefaults;
+
+ /**
+ * Encodes the specified NodePoolDefaults message. Does not implicitly {@link google.container.v1.NodePoolDefaults.verify|verify} messages.
+ * @param message NodePoolDefaults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodePoolDefaults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodePoolDefaults message, length delimited. Does not implicitly {@link google.container.v1.NodePoolDefaults.verify|verify} messages.
+ * @param message NodePoolDefaults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodePoolDefaults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodePoolDefaults message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodePoolDefaults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePoolDefaults;
+
+ /**
+ * Decodes a NodePoolDefaults message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodePoolDefaults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePoolDefaults;
+
+ /**
+ * Verifies a NodePoolDefaults message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodePoolDefaults message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodePoolDefaults
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePoolDefaults;
+
+ /**
+ * Creates a plain object from a NodePoolDefaults message. Also converts values to other types if specified.
+ * @param message NodePoolDefaults
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePoolDefaults, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodePoolDefaults to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodePoolDefaults
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodeConfigDefaults. */
+ interface INodeConfigDefaults {
+
+ /** NodeConfigDefaults gcfsConfig */
+ gcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** NodeConfigDefaults loggingConfig */
+ loggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+ }
+
+ /** Represents a NodeConfigDefaults. */
+ class NodeConfigDefaults implements INodeConfigDefaults {
+
+ /**
+ * Constructs a new NodeConfigDefaults.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeConfigDefaults);
+
+ /** NodeConfigDefaults gcfsConfig. */
+ public gcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** NodeConfigDefaults loggingConfig. */
+ public loggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+
+ /**
+ * Creates a new NodeConfigDefaults instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeConfigDefaults instance
+ */
+ public static create(properties?: google.container.v1.INodeConfigDefaults): google.container.v1.NodeConfigDefaults;
+
+ /**
+ * Encodes the specified NodeConfigDefaults message. Does not implicitly {@link google.container.v1.NodeConfigDefaults.verify|verify} messages.
+ * @param message NodeConfigDefaults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeConfigDefaults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeConfigDefaults message, length delimited. Does not implicitly {@link google.container.v1.NodeConfigDefaults.verify|verify} messages.
+ * @param message NodeConfigDefaults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeConfigDefaults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeConfigDefaults message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeConfigDefaults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeConfigDefaults;
+
+ /**
+ * Decodes a NodeConfigDefaults message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeConfigDefaults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeConfigDefaults;
+
+ /**
+ * Verifies a NodeConfigDefaults message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeConfigDefaults message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeConfigDefaults
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeConfigDefaults;
+
+ /**
+ * Creates a plain object from a NodeConfigDefaults message. Also converts values to other types if specified.
+ * @param message NodeConfigDefaults
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeConfigDefaults, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeConfigDefaults to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeConfigDefaults
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ClusterUpdate. */
+ interface IClusterUpdate {
+
+ /** ClusterUpdate desiredNodeVersion */
+ desiredNodeVersion?: (string|null);
+
+ /** ClusterUpdate desiredMonitoringService */
+ desiredMonitoringService?: (string|null);
+
+ /** ClusterUpdate desiredAddonsConfig */
+ desiredAddonsConfig?: (google.container.v1.IAddonsConfig|null);
+
+ /** ClusterUpdate desiredNodePoolId */
+ desiredNodePoolId?: (string|null);
+
+ /** ClusterUpdate desiredImageType */
+ desiredImageType?: (string|null);
+
+ /** ClusterUpdate desiredDatabaseEncryption */
+ desiredDatabaseEncryption?: (google.container.v1.IDatabaseEncryption|null);
+
+ /** ClusterUpdate desiredWorkloadIdentityConfig */
+ desiredWorkloadIdentityConfig?: (google.container.v1.IWorkloadIdentityConfig|null);
+
+ /** ClusterUpdate desiredMeshCertificates */
+ desiredMeshCertificates?: (google.container.v1.IMeshCertificates|null);
+
+ /** ClusterUpdate desiredShieldedNodes */
+ desiredShieldedNodes?: (google.container.v1.IShieldedNodes|null);
+
+ /** ClusterUpdate desiredCostManagementConfig */
+ desiredCostManagementConfig?: (google.container.v1.ICostManagementConfig|null);
+
+ /** ClusterUpdate desiredDnsConfig */
+ desiredDnsConfig?: (google.container.v1.IDNSConfig|null);
+
+ /** ClusterUpdate desiredNodePoolAutoscaling */
+ desiredNodePoolAutoscaling?: (google.container.v1.INodePoolAutoscaling|null);
+
+ /** ClusterUpdate desiredLocations */
+ desiredLocations?: (string[]|null);
+
+ /** ClusterUpdate desiredMasterAuthorizedNetworksConfig */
+ desiredMasterAuthorizedNetworksConfig?: (google.container.v1.IMasterAuthorizedNetworksConfig|null);
+
+ /** ClusterUpdate desiredClusterAutoscaling */
+ desiredClusterAutoscaling?: (google.container.v1.IClusterAutoscaling|null);
+
+ /** ClusterUpdate desiredBinaryAuthorization */
+ desiredBinaryAuthorization?: (google.container.v1.IBinaryAuthorization|null);
+
+ /** ClusterUpdate desiredLoggingService */
+ desiredLoggingService?: (string|null);
+
+ /** ClusterUpdate desiredResourceUsageExportConfig */
+ desiredResourceUsageExportConfig?: (google.container.v1.IResourceUsageExportConfig|null);
+
+ /** ClusterUpdate desiredVerticalPodAutoscaling */
+ desiredVerticalPodAutoscaling?: (google.container.v1.IVerticalPodAutoscaling|null);
+
+ /** ClusterUpdate desiredPrivateClusterConfig */
+ desiredPrivateClusterConfig?: (google.container.v1.IPrivateClusterConfig|null);
+
+ /** ClusterUpdate desiredIntraNodeVisibilityConfig */
+ desiredIntraNodeVisibilityConfig?: (google.container.v1.IIntraNodeVisibilityConfig|null);
+
+ /** ClusterUpdate desiredDefaultSnatStatus */
+ desiredDefaultSnatStatus?: (google.container.v1.IDefaultSnatStatus|null);
+
+ /** ClusterUpdate desiredReleaseChannel */
+ desiredReleaseChannel?: (google.container.v1.IReleaseChannel|null);
+
+ /** ClusterUpdate desiredL4ilbSubsettingConfig */
+ desiredL4ilbSubsettingConfig?: (google.container.v1.IILBSubsettingConfig|null);
+
+ /** ClusterUpdate desiredDatapathProvider */
+ desiredDatapathProvider?: (google.container.v1.DatapathProvider|keyof typeof google.container.v1.DatapathProvider|null);
+
+ /** ClusterUpdate desiredPrivateIpv6GoogleAccess */
+ desiredPrivateIpv6GoogleAccess?: (google.container.v1.PrivateIPv6GoogleAccess|keyof typeof google.container.v1.PrivateIPv6GoogleAccess|null);
+
+ /** ClusterUpdate desiredNotificationConfig */
+ desiredNotificationConfig?: (google.container.v1.INotificationConfig|null);
+
+ /** ClusterUpdate desiredAuthenticatorGroupsConfig */
+ desiredAuthenticatorGroupsConfig?: (google.container.v1.IAuthenticatorGroupsConfig|null);
+
+ /** ClusterUpdate desiredLoggingConfig */
+ desiredLoggingConfig?: (google.container.v1.ILoggingConfig|null);
+
+ /** ClusterUpdate desiredMonitoringConfig */
+ desiredMonitoringConfig?: (google.container.v1.IMonitoringConfig|null);
+
+ /** ClusterUpdate desiredIdentityServiceConfig */
+ desiredIdentityServiceConfig?: (google.container.v1.IIdentityServiceConfig|null);
+
+ /** ClusterUpdate desiredServiceExternalIpsConfig */
+ desiredServiceExternalIpsConfig?: (google.container.v1.IServiceExternalIPsConfig|null);
+
+ /** ClusterUpdate desiredEnablePrivateEndpoint */
+ desiredEnablePrivateEndpoint?: (boolean|null);
+
+ /** ClusterUpdate desiredMasterVersion */
+ desiredMasterVersion?: (string|null);
+
+ /** ClusterUpdate desiredGcfsConfig */
+ desiredGcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** ClusterUpdate desiredNodePoolAutoConfigNetworkTags */
+ desiredNodePoolAutoConfigNetworkTags?: (google.container.v1.INetworkTags|null);
+
+ /** ClusterUpdate desiredGatewayApiConfig */
+ desiredGatewayApiConfig?: (google.container.v1.IGatewayAPIConfig|null);
+
+ /** ClusterUpdate desiredNodePoolLoggingConfig */
+ desiredNodePoolLoggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+ }
+
+ /** Represents a ClusterUpdate. */
+ class ClusterUpdate implements IClusterUpdate {
+
+ /**
+ * Constructs a new ClusterUpdate.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IClusterUpdate);
+
+ /** ClusterUpdate desiredNodeVersion. */
+ public desiredNodeVersion: string;
+
+ /** ClusterUpdate desiredMonitoringService. */
+ public desiredMonitoringService: string;
+
+ /** ClusterUpdate desiredAddonsConfig. */
+ public desiredAddonsConfig?: (google.container.v1.IAddonsConfig|null);
+
+ /** ClusterUpdate desiredNodePoolId. */
+ public desiredNodePoolId: string;
+
+ /** ClusterUpdate desiredImageType. */
+ public desiredImageType: string;
+
+ /** ClusterUpdate desiredDatabaseEncryption. */
+ public desiredDatabaseEncryption?: (google.container.v1.IDatabaseEncryption|null);
+
+ /** ClusterUpdate desiredWorkloadIdentityConfig. */
+ public desiredWorkloadIdentityConfig?: (google.container.v1.IWorkloadIdentityConfig|null);
+
+ /** ClusterUpdate desiredMeshCertificates. */
+ public desiredMeshCertificates?: (google.container.v1.IMeshCertificates|null);
+
+ /** ClusterUpdate desiredShieldedNodes. */
+ public desiredShieldedNodes?: (google.container.v1.IShieldedNodes|null);
+
+ /** ClusterUpdate desiredCostManagementConfig. */
+ public desiredCostManagementConfig?: (google.container.v1.ICostManagementConfig|null);
+
+ /** ClusterUpdate desiredDnsConfig. */
+ public desiredDnsConfig?: (google.container.v1.IDNSConfig|null);
+
+ /** ClusterUpdate desiredNodePoolAutoscaling. */
+ public desiredNodePoolAutoscaling?: (google.container.v1.INodePoolAutoscaling|null);
+
+ /** ClusterUpdate desiredLocations. */
+ public desiredLocations: string[];
+
+ /** ClusterUpdate desiredMasterAuthorizedNetworksConfig. */
+ public desiredMasterAuthorizedNetworksConfig?: (google.container.v1.IMasterAuthorizedNetworksConfig|null);
+
+ /** ClusterUpdate desiredClusterAutoscaling. */
+ public desiredClusterAutoscaling?: (google.container.v1.IClusterAutoscaling|null);
+
+ /** ClusterUpdate desiredBinaryAuthorization. */
+ public desiredBinaryAuthorization?: (google.container.v1.IBinaryAuthorization|null);
+
+ /** ClusterUpdate desiredLoggingService. */
+ public desiredLoggingService: string;
+
+ /** ClusterUpdate desiredResourceUsageExportConfig. */
+ public desiredResourceUsageExportConfig?: (google.container.v1.IResourceUsageExportConfig|null);
+
+ /** ClusterUpdate desiredVerticalPodAutoscaling. */
+ public desiredVerticalPodAutoscaling?: (google.container.v1.IVerticalPodAutoscaling|null);
+
+ /** ClusterUpdate desiredPrivateClusterConfig. */
+ public desiredPrivateClusterConfig?: (google.container.v1.IPrivateClusterConfig|null);
+
+ /** ClusterUpdate desiredIntraNodeVisibilityConfig. */
+ public desiredIntraNodeVisibilityConfig?: (google.container.v1.IIntraNodeVisibilityConfig|null);
+
+ /** ClusterUpdate desiredDefaultSnatStatus. */
+ public desiredDefaultSnatStatus?: (google.container.v1.IDefaultSnatStatus|null);
+
+ /** ClusterUpdate desiredReleaseChannel. */
+ public desiredReleaseChannel?: (google.container.v1.IReleaseChannel|null);
+
+ /** ClusterUpdate desiredL4ilbSubsettingConfig. */
+ public desiredL4ilbSubsettingConfig?: (google.container.v1.IILBSubsettingConfig|null);
+
+ /** ClusterUpdate desiredDatapathProvider. */
+ public desiredDatapathProvider: (google.container.v1.DatapathProvider|keyof typeof google.container.v1.DatapathProvider);
+
+ /** ClusterUpdate desiredPrivateIpv6GoogleAccess. */
+ public desiredPrivateIpv6GoogleAccess: (google.container.v1.PrivateIPv6GoogleAccess|keyof typeof google.container.v1.PrivateIPv6GoogleAccess);
+
+ /** ClusterUpdate desiredNotificationConfig. */
+ public desiredNotificationConfig?: (google.container.v1.INotificationConfig|null);
+
+ /** ClusterUpdate desiredAuthenticatorGroupsConfig. */
+ public desiredAuthenticatorGroupsConfig?: (google.container.v1.IAuthenticatorGroupsConfig|null);
+
+ /** ClusterUpdate desiredLoggingConfig. */
+ public desiredLoggingConfig?: (google.container.v1.ILoggingConfig|null);
+
+ /** ClusterUpdate desiredMonitoringConfig. */
+ public desiredMonitoringConfig?: (google.container.v1.IMonitoringConfig|null);
+
+ /** ClusterUpdate desiredIdentityServiceConfig. */
+ public desiredIdentityServiceConfig?: (google.container.v1.IIdentityServiceConfig|null);
+
+ /** ClusterUpdate desiredServiceExternalIpsConfig. */
+ public desiredServiceExternalIpsConfig?: (google.container.v1.IServiceExternalIPsConfig|null);
+
+ /** ClusterUpdate desiredEnablePrivateEndpoint. */
+ public desiredEnablePrivateEndpoint?: (boolean|null);
+
+ /** ClusterUpdate desiredMasterVersion. */
+ public desiredMasterVersion: string;
+
+ /** ClusterUpdate desiredGcfsConfig. */
+ public desiredGcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** ClusterUpdate desiredNodePoolAutoConfigNetworkTags. */
+ public desiredNodePoolAutoConfigNetworkTags?: (google.container.v1.INetworkTags|null);
+
+ /** ClusterUpdate desiredGatewayApiConfig. */
+ public desiredGatewayApiConfig?: (google.container.v1.IGatewayAPIConfig|null);
+
+ /** ClusterUpdate desiredNodePoolLoggingConfig. */
+ public desiredNodePoolLoggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+
+ /** ClusterUpdate _desiredEnablePrivateEndpoint. */
+ public _desiredEnablePrivateEndpoint?: "desiredEnablePrivateEndpoint";
+
+ /**
+ * Creates a new ClusterUpdate instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ClusterUpdate instance
+ */
+ public static create(properties?: google.container.v1.IClusterUpdate): google.container.v1.ClusterUpdate;
+
+ /**
+ * Encodes the specified ClusterUpdate message. Does not implicitly {@link google.container.v1.ClusterUpdate.verify|verify} messages.
+ * @param message ClusterUpdate message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IClusterUpdate, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ClusterUpdate message, length delimited. Does not implicitly {@link google.container.v1.ClusterUpdate.verify|verify} messages.
+ * @param message ClusterUpdate message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IClusterUpdate, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ClusterUpdate message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ClusterUpdate
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ClusterUpdate;
+
+ /**
+ * Decodes a ClusterUpdate message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ClusterUpdate
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ClusterUpdate;
+
+ /**
+ * Verifies a ClusterUpdate message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ClusterUpdate message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ClusterUpdate
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ClusterUpdate;
+
+ /**
+ * Creates a plain object from a ClusterUpdate message. Also converts values to other types if specified.
+ * @param message ClusterUpdate
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ClusterUpdate, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ClusterUpdate to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ClusterUpdate
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Operation. */
+ interface IOperation {
+
+ /** Operation name */
+ name?: (string|null);
+
+ /** Operation zone */
+ zone?: (string|null);
+
+ /** Operation operationType */
+ operationType?: (google.container.v1.Operation.Type|keyof typeof google.container.v1.Operation.Type|null);
+
+ /** Operation status */
+ status?: (google.container.v1.Operation.Status|keyof typeof google.container.v1.Operation.Status|null);
+
+ /** Operation detail */
+ detail?: (string|null);
+
+ /** Operation statusMessage */
+ statusMessage?: (string|null);
+
+ /** Operation selfLink */
+ selfLink?: (string|null);
+
+ /** Operation targetLink */
+ targetLink?: (string|null);
+
+ /** Operation location */
+ location?: (string|null);
+
+ /** Operation startTime */
+ startTime?: (string|null);
+
+ /** Operation endTime */
+ endTime?: (string|null);
+
+ /** Operation progress */
+ progress?: (google.container.v1.IOperationProgress|null);
+
+ /** Operation clusterConditions */
+ clusterConditions?: (google.container.v1.IStatusCondition[]|null);
+
+ /** Operation nodepoolConditions */
+ nodepoolConditions?: (google.container.v1.IStatusCondition[]|null);
+
+ /** Operation error */
+ error?: (google.rpc.IStatus|null);
+ }
+
+ /** Represents an Operation. */
+ class Operation implements IOperation {
+
+ /**
+ * Constructs a new Operation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IOperation);
+
+ /** Operation name. */
+ public name: string;
+
+ /** Operation zone. */
+ public zone: string;
+
+ /** Operation operationType. */
+ public operationType: (google.container.v1.Operation.Type|keyof typeof google.container.v1.Operation.Type);
+
+ /** Operation status. */
+ public status: (google.container.v1.Operation.Status|keyof typeof google.container.v1.Operation.Status);
+
+ /** Operation detail. */
+ public detail: string;
+
+ /** Operation statusMessage. */
+ public statusMessage: string;
+
+ /** Operation selfLink. */
+ public selfLink: string;
+
+ /** Operation targetLink. */
+ public targetLink: string;
+
+ /** Operation location. */
+ public location: string;
+
+ /** Operation startTime. */
+ public startTime: string;
+
+ /** Operation endTime. */
+ public endTime: string;
+
+ /** Operation progress. */
+ public progress?: (google.container.v1.IOperationProgress|null);
+
+ /** Operation clusterConditions. */
+ public clusterConditions: google.container.v1.IStatusCondition[];
+
+ /** Operation nodepoolConditions. */
+ public nodepoolConditions: google.container.v1.IStatusCondition[];
+
+ /** Operation error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /**
+ * Creates a new Operation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Operation instance
+ */
+ public static create(properties?: google.container.v1.IOperation): google.container.v1.Operation;
+
+ /**
+ * Encodes the specified Operation message. Does not implicitly {@link google.container.v1.Operation.verify|verify} messages.
+ * @param message Operation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Operation message, length delimited. Does not implicitly {@link google.container.v1.Operation.verify|verify} messages.
+ * @param message Operation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Operation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Operation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.Operation;
+
+ /**
+ * Decodes an Operation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Operation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.Operation;
+
+ /**
+ * Verifies an Operation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Operation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Operation
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.Operation;
+
+ /**
+ * Creates a plain object from an Operation message. Also converts values to other types if specified.
+ * @param message Operation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.Operation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Operation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Operation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Operation {
+
+ /** Status enum. */
+ enum Status {
+ STATUS_UNSPECIFIED = 0,
+ PENDING = 1,
+ RUNNING = 2,
+ DONE = 3,
+ ABORTING = 4
+ }
+
+ /** Type enum. */
+ enum Type {
+ TYPE_UNSPECIFIED = 0,
+ CREATE_CLUSTER = 1,
+ DELETE_CLUSTER = 2,
+ UPGRADE_MASTER = 3,
+ UPGRADE_NODES = 4,
+ REPAIR_CLUSTER = 5,
+ UPDATE_CLUSTER = 6,
+ CREATE_NODE_POOL = 7,
+ DELETE_NODE_POOL = 8,
+ SET_NODE_POOL_MANAGEMENT = 9,
+ AUTO_REPAIR_NODES = 10,
+ AUTO_UPGRADE_NODES = 11,
+ SET_LABELS = 12,
+ SET_MASTER_AUTH = 13,
+ SET_NODE_POOL_SIZE = 14,
+ SET_NETWORK_POLICY = 15,
+ SET_MAINTENANCE_POLICY = 16
+ }
+ }
+
+ /** Properties of an OperationProgress. */
+ interface IOperationProgress {
+
+ /** OperationProgress name */
+ name?: (string|null);
+
+ /** OperationProgress status */
+ status?: (google.container.v1.Operation.Status|keyof typeof google.container.v1.Operation.Status|null);
+
+ /** OperationProgress metrics */
+ metrics?: (google.container.v1.OperationProgress.IMetric[]|null);
+
+ /** OperationProgress stages */
+ stages?: (google.container.v1.IOperationProgress[]|null);
+ }
+
+ /** Represents an OperationProgress. */
+ class OperationProgress implements IOperationProgress {
+
+ /**
+ * Constructs a new OperationProgress.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IOperationProgress);
+
+ /** OperationProgress name. */
+ public name: string;
+
+ /** OperationProgress status. */
+ public status: (google.container.v1.Operation.Status|keyof typeof google.container.v1.Operation.Status);
+
+ /** OperationProgress metrics. */
+ public metrics: google.container.v1.OperationProgress.IMetric[];
+
+ /** OperationProgress stages. */
+ public stages: google.container.v1.IOperationProgress[];
+
+ /**
+ * Creates a new OperationProgress instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationProgress instance
+ */
+ public static create(properties?: google.container.v1.IOperationProgress): google.container.v1.OperationProgress;
+
+ /**
+ * Encodes the specified OperationProgress message. Does not implicitly {@link google.container.v1.OperationProgress.verify|verify} messages.
+ * @param message OperationProgress message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IOperationProgress, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationProgress message, length delimited. Does not implicitly {@link google.container.v1.OperationProgress.verify|verify} messages.
+ * @param message OperationProgress message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IOperationProgress, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationProgress message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationProgress
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.OperationProgress;
+
+ /**
+ * Decodes an OperationProgress message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationProgress
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.OperationProgress;
+
+ /**
+ * Verifies an OperationProgress message.
+ * @param message Plain 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 OperationProgress message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationProgress
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.OperationProgress;
+
+ /**
+ * Creates a plain object from an OperationProgress message. Also converts values to other types if specified.
+ * @param message OperationProgress
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.OperationProgress, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationProgress to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationProgress
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OperationProgress {
+
+ /** Properties of a Metric. */
+ interface IMetric {
+
+ /** Metric name */
+ name?: (string|null);
+
+ /** Metric intValue */
+ intValue?: (number|Long|string|null);
+
+ /** Metric doubleValue */
+ doubleValue?: (number|null);
+
+ /** Metric stringValue */
+ stringValue?: (string|null);
+ }
+
+ /** Represents a Metric. */
+ class Metric implements IMetric {
+
+ /**
+ * Constructs a new Metric.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.OperationProgress.IMetric);
+
+ /** Metric name. */
+ public name: string;
+
+ /** Metric intValue. */
+ public intValue?: (number|Long|string|null);
+
+ /** Metric doubleValue. */
+ public doubleValue?: (number|null);
+
+ /** Metric stringValue. */
+ public stringValue?: (string|null);
+
+ /** Metric value. */
+ public value?: ("intValue"|"doubleValue"|"stringValue");
+
+ /**
+ * Creates a new Metric instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Metric instance
+ */
+ public static create(properties?: google.container.v1.OperationProgress.IMetric): google.container.v1.OperationProgress.Metric;
+
+ /**
+ * Encodes the specified Metric message. Does not implicitly {@link google.container.v1.OperationProgress.Metric.verify|verify} messages.
+ * @param message Metric message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.OperationProgress.IMetric, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Metric message, length delimited. Does not implicitly {@link google.container.v1.OperationProgress.Metric.verify|verify} messages.
+ * @param message Metric message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.OperationProgress.IMetric, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Metric message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Metric
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.OperationProgress.Metric;
+
+ /**
+ * Decodes a Metric message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Metric
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.OperationProgress.Metric;
+
+ /**
+ * Verifies a Metric message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Metric message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Metric
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.OperationProgress.Metric;
+
+ /**
+ * Creates a plain object from a Metric message. Also converts values to other types if specified.
+ * @param message Metric
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.OperationProgress.Metric, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Metric to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Metric
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a CreateClusterRequest. */
+ interface ICreateClusterRequest {
+
+ /** CreateClusterRequest projectId */
+ projectId?: (string|null);
+
+ /** CreateClusterRequest zone */
+ zone?: (string|null);
+
+ /** CreateClusterRequest cluster */
+ cluster?: (google.container.v1.ICluster|null);
+
+ /** CreateClusterRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a CreateClusterRequest. */
+ class CreateClusterRequest implements ICreateClusterRequest {
+
+ /**
+ * Constructs a new CreateClusterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICreateClusterRequest);
+
+ /** CreateClusterRequest projectId. */
+ public projectId: string;
+
+ /** CreateClusterRequest zone. */
+ public zone: string;
+
+ /** CreateClusterRequest cluster. */
+ public cluster?: (google.container.v1.ICluster|null);
+
+ /** CreateClusterRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new CreateClusterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateClusterRequest instance
+ */
+ public static create(properties?: google.container.v1.ICreateClusterRequest): google.container.v1.CreateClusterRequest;
+
+ /**
+ * Encodes the specified CreateClusterRequest message. Does not implicitly {@link google.container.v1.CreateClusterRequest.verify|verify} messages.
+ * @param message CreateClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICreateClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateClusterRequest message, length delimited. Does not implicitly {@link google.container.v1.CreateClusterRequest.verify|verify} messages.
+ * @param message CreateClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICreateClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateClusterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CreateClusterRequest;
+
+ /**
+ * Decodes a CreateClusterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CreateClusterRequest;
+
+ /**
+ * Verifies a CreateClusterRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateClusterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateClusterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CreateClusterRequest;
+
+ /**
+ * Creates a plain object from a CreateClusterRequest message. Also converts values to other types if specified.
+ * @param message CreateClusterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CreateClusterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateClusterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateClusterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetClusterRequest. */
+ interface IGetClusterRequest {
+
+ /** GetClusterRequest projectId */
+ projectId?: (string|null);
+
+ /** GetClusterRequest zone */
+ zone?: (string|null);
+
+ /** GetClusterRequest clusterId */
+ clusterId?: (string|null);
+
+ /** GetClusterRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetClusterRequest. */
+ class GetClusterRequest implements IGetClusterRequest {
+
+ /**
+ * Constructs a new GetClusterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetClusterRequest);
+
+ /** GetClusterRequest projectId. */
+ public projectId: string;
+
+ /** GetClusterRequest zone. */
+ public zone: string;
+
+ /** GetClusterRequest clusterId. */
+ public clusterId: string;
+
+ /** GetClusterRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetClusterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetClusterRequest instance
+ */
+ public static create(properties?: google.container.v1.IGetClusterRequest): google.container.v1.GetClusterRequest;
+
+ /**
+ * Encodes the specified GetClusterRequest message. Does not implicitly {@link google.container.v1.GetClusterRequest.verify|verify} messages.
+ * @param message GetClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetClusterRequest message, length delimited. Does not implicitly {@link google.container.v1.GetClusterRequest.verify|verify} messages.
+ * @param message GetClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetClusterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetClusterRequest;
+
+ /**
+ * Decodes a GetClusterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetClusterRequest;
+
+ /**
+ * Verifies a GetClusterRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetClusterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetClusterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetClusterRequest;
+
+ /**
+ * Creates a plain object from a GetClusterRequest message. Also converts values to other types if specified.
+ * @param message GetClusterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetClusterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetClusterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetClusterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateClusterRequest. */
+ interface IUpdateClusterRequest {
+
+ /** UpdateClusterRequest projectId */
+ projectId?: (string|null);
+
+ /** UpdateClusterRequest zone */
+ zone?: (string|null);
+
+ /** UpdateClusterRequest clusterId */
+ clusterId?: (string|null);
+
+ /** UpdateClusterRequest update */
+ update?: (google.container.v1.IClusterUpdate|null);
+
+ /** UpdateClusterRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents an UpdateClusterRequest. */
+ class UpdateClusterRequest implements IUpdateClusterRequest {
+
+ /**
+ * Constructs a new UpdateClusterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUpdateClusterRequest);
+
+ /** UpdateClusterRequest projectId. */
+ public projectId: string;
+
+ /** UpdateClusterRequest zone. */
+ public zone: string;
+
+ /** UpdateClusterRequest clusterId. */
+ public clusterId: string;
+
+ /** UpdateClusterRequest update. */
+ public update?: (google.container.v1.IClusterUpdate|null);
+
+ /** UpdateClusterRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new UpdateClusterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateClusterRequest instance
+ */
+ public static create(properties?: google.container.v1.IUpdateClusterRequest): google.container.v1.UpdateClusterRequest;
+
+ /**
+ * Encodes the specified UpdateClusterRequest message. Does not implicitly {@link google.container.v1.UpdateClusterRequest.verify|verify} messages.
+ * @param message UpdateClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUpdateClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateClusterRequest message, length delimited. Does not implicitly {@link google.container.v1.UpdateClusterRequest.verify|verify} messages.
+ * @param message UpdateClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUpdateClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateClusterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UpdateClusterRequest;
+
+ /**
+ * Decodes an UpdateClusterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UpdateClusterRequest;
+
+ /**
+ * Verifies an UpdateClusterRequest message.
+ * @param message Plain 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 UpdateClusterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateClusterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UpdateClusterRequest;
+
+ /**
+ * Creates a plain object from an UpdateClusterRequest message. Also converts values to other types if specified.
+ * @param message UpdateClusterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UpdateClusterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateClusterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateClusterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateNodePoolRequest. */
+ interface IUpdateNodePoolRequest {
+
+ /** UpdateNodePoolRequest projectId */
+ projectId?: (string|null);
+
+ /** UpdateNodePoolRequest zone */
+ zone?: (string|null);
+
+ /** UpdateNodePoolRequest clusterId */
+ clusterId?: (string|null);
+
+ /** UpdateNodePoolRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** UpdateNodePoolRequest nodeVersion */
+ nodeVersion?: (string|null);
+
+ /** UpdateNodePoolRequest imageType */
+ imageType?: (string|null);
+
+ /** UpdateNodePoolRequest name */
+ name?: (string|null);
+
+ /** UpdateNodePoolRequest locations */
+ locations?: (string[]|null);
+
+ /** UpdateNodePoolRequest workloadMetadataConfig */
+ workloadMetadataConfig?: (google.container.v1.IWorkloadMetadataConfig|null);
+
+ /** UpdateNodePoolRequest upgradeSettings */
+ upgradeSettings?: (google.container.v1.NodePool.IUpgradeSettings|null);
+
+ /** UpdateNodePoolRequest tags */
+ tags?: (google.container.v1.INetworkTags|null);
+
+ /** UpdateNodePoolRequest taints */
+ taints?: (google.container.v1.INodeTaints|null);
+
+ /** UpdateNodePoolRequest labels */
+ labels?: (google.container.v1.INodeLabels|null);
+
+ /** UpdateNodePoolRequest linuxNodeConfig */
+ linuxNodeConfig?: (google.container.v1.ILinuxNodeConfig|null);
+
+ /** UpdateNodePoolRequest kubeletConfig */
+ kubeletConfig?: (google.container.v1.INodeKubeletConfig|null);
+
+ /** UpdateNodePoolRequest nodeNetworkConfig */
+ nodeNetworkConfig?: (google.container.v1.INodeNetworkConfig|null);
+
+ /** UpdateNodePoolRequest gcfsConfig */
+ gcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** UpdateNodePoolRequest confidentialNodes */
+ confidentialNodes?: (google.container.v1.IConfidentialNodes|null);
+
+ /** UpdateNodePoolRequest gvnic */
+ gvnic?: (google.container.v1.IVirtualNIC|null);
+
+ /** UpdateNodePoolRequest loggingConfig */
+ loggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+
+ /** UpdateNodePoolRequest resourceLabels */
+ resourceLabels?: (google.container.v1.IResourceLabels|null);
+ }
+
+ /** Represents an UpdateNodePoolRequest. */
+ class UpdateNodePoolRequest implements IUpdateNodePoolRequest {
+
+ /**
+ * Constructs a new UpdateNodePoolRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUpdateNodePoolRequest);
+
+ /** UpdateNodePoolRequest projectId. */
+ public projectId: string;
+
+ /** UpdateNodePoolRequest zone. */
+ public zone: string;
+
+ /** UpdateNodePoolRequest clusterId. */
+ public clusterId: string;
+
+ /** UpdateNodePoolRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** UpdateNodePoolRequest nodeVersion. */
+ public nodeVersion: string;
+
+ /** UpdateNodePoolRequest imageType. */
+ public imageType: string;
+
+ /** UpdateNodePoolRequest name. */
+ public name: string;
+
+ /** UpdateNodePoolRequest locations. */
+ public locations: string[];
+
+ /** UpdateNodePoolRequest workloadMetadataConfig. */
+ public workloadMetadataConfig?: (google.container.v1.IWorkloadMetadataConfig|null);
+
+ /** UpdateNodePoolRequest upgradeSettings. */
+ public upgradeSettings?: (google.container.v1.NodePool.IUpgradeSettings|null);
+
+ /** UpdateNodePoolRequest tags. */
+ public tags?: (google.container.v1.INetworkTags|null);
+
+ /** UpdateNodePoolRequest taints. */
+ public taints?: (google.container.v1.INodeTaints|null);
+
+ /** UpdateNodePoolRequest labels. */
+ public labels?: (google.container.v1.INodeLabels|null);
+
+ /** UpdateNodePoolRequest linuxNodeConfig. */
+ public linuxNodeConfig?: (google.container.v1.ILinuxNodeConfig|null);
+
+ /** UpdateNodePoolRequest kubeletConfig. */
+ public kubeletConfig?: (google.container.v1.INodeKubeletConfig|null);
+
+ /** UpdateNodePoolRequest nodeNetworkConfig. */
+ public nodeNetworkConfig?: (google.container.v1.INodeNetworkConfig|null);
+
+ /** UpdateNodePoolRequest gcfsConfig. */
+ public gcfsConfig?: (google.container.v1.IGcfsConfig|null);
+
+ /** UpdateNodePoolRequest confidentialNodes. */
+ public confidentialNodes?: (google.container.v1.IConfidentialNodes|null);
+
+ /** UpdateNodePoolRequest gvnic. */
+ public gvnic?: (google.container.v1.IVirtualNIC|null);
+
+ /** UpdateNodePoolRequest loggingConfig. */
+ public loggingConfig?: (google.container.v1.INodePoolLoggingConfig|null);
+
+ /** UpdateNodePoolRequest resourceLabels. */
+ public resourceLabels?: (google.container.v1.IResourceLabels|null);
+
+ /**
+ * Creates a new UpdateNodePoolRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateNodePoolRequest instance
+ */
+ public static create(properties?: google.container.v1.IUpdateNodePoolRequest): google.container.v1.UpdateNodePoolRequest;
+
+ /**
+ * Encodes the specified UpdateNodePoolRequest message. Does not implicitly {@link google.container.v1.UpdateNodePoolRequest.verify|verify} messages.
+ * @param message UpdateNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUpdateNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateNodePoolRequest message, length delimited. Does not implicitly {@link google.container.v1.UpdateNodePoolRequest.verify|verify} messages.
+ * @param message UpdateNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUpdateNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateNodePoolRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UpdateNodePoolRequest;
+
+ /**
+ * Decodes an UpdateNodePoolRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UpdateNodePoolRequest;
+
+ /**
+ * Verifies an UpdateNodePoolRequest message.
+ * @param message Plain 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 UpdateNodePoolRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateNodePoolRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UpdateNodePoolRequest;
+
+ /**
+ * Creates a plain object from an UpdateNodePoolRequest message. Also converts values to other types if specified.
+ * @param message UpdateNodePoolRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UpdateNodePoolRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateNodePoolRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateNodePoolRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetNodePoolAutoscalingRequest. */
+ interface ISetNodePoolAutoscalingRequest {
+
+ /** SetNodePoolAutoscalingRequest projectId */
+ projectId?: (string|null);
+
+ /** SetNodePoolAutoscalingRequest zone */
+ zone?: (string|null);
+
+ /** SetNodePoolAutoscalingRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetNodePoolAutoscalingRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** SetNodePoolAutoscalingRequest autoscaling */
+ autoscaling?: (google.container.v1.INodePoolAutoscaling|null);
+
+ /** SetNodePoolAutoscalingRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetNodePoolAutoscalingRequest. */
+ class SetNodePoolAutoscalingRequest implements ISetNodePoolAutoscalingRequest {
+
+ /**
+ * Constructs a new SetNodePoolAutoscalingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetNodePoolAutoscalingRequest);
+
+ /** SetNodePoolAutoscalingRequest projectId. */
+ public projectId: string;
+
+ /** SetNodePoolAutoscalingRequest zone. */
+ public zone: string;
+
+ /** SetNodePoolAutoscalingRequest clusterId. */
+ public clusterId: string;
+
+ /** SetNodePoolAutoscalingRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** SetNodePoolAutoscalingRequest autoscaling. */
+ public autoscaling?: (google.container.v1.INodePoolAutoscaling|null);
+
+ /** SetNodePoolAutoscalingRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetNodePoolAutoscalingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetNodePoolAutoscalingRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetNodePoolAutoscalingRequest): google.container.v1.SetNodePoolAutoscalingRequest;
+
+ /**
+ * Encodes the specified SetNodePoolAutoscalingRequest message. Does not implicitly {@link google.container.v1.SetNodePoolAutoscalingRequest.verify|verify} messages.
+ * @param message SetNodePoolAutoscalingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetNodePoolAutoscalingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetNodePoolAutoscalingRequest message, length delimited. Does not implicitly {@link google.container.v1.SetNodePoolAutoscalingRequest.verify|verify} messages.
+ * @param message SetNodePoolAutoscalingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetNodePoolAutoscalingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetNodePoolAutoscalingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetNodePoolAutoscalingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetNodePoolAutoscalingRequest;
+
+ /**
+ * Decodes a SetNodePoolAutoscalingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetNodePoolAutoscalingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetNodePoolAutoscalingRequest;
+
+ /**
+ * Verifies a SetNodePoolAutoscalingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetNodePoolAutoscalingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetNodePoolAutoscalingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetNodePoolAutoscalingRequest;
+
+ /**
+ * Creates a plain object from a SetNodePoolAutoscalingRequest message. Also converts values to other types if specified.
+ * @param message SetNodePoolAutoscalingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetNodePoolAutoscalingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetNodePoolAutoscalingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetNodePoolAutoscalingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetLoggingServiceRequest. */
+ interface ISetLoggingServiceRequest {
+
+ /** SetLoggingServiceRequest projectId */
+ projectId?: (string|null);
+
+ /** SetLoggingServiceRequest zone */
+ zone?: (string|null);
+
+ /** SetLoggingServiceRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetLoggingServiceRequest loggingService */
+ loggingService?: (string|null);
+
+ /** SetLoggingServiceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetLoggingServiceRequest. */
+ class SetLoggingServiceRequest implements ISetLoggingServiceRequest {
+
+ /**
+ * Constructs a new SetLoggingServiceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetLoggingServiceRequest);
+
+ /** SetLoggingServiceRequest projectId. */
+ public projectId: string;
+
+ /** SetLoggingServiceRequest zone. */
+ public zone: string;
+
+ /** SetLoggingServiceRequest clusterId. */
+ public clusterId: string;
+
+ /** SetLoggingServiceRequest loggingService. */
+ public loggingService: string;
+
+ /** SetLoggingServiceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetLoggingServiceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetLoggingServiceRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetLoggingServiceRequest): google.container.v1.SetLoggingServiceRequest;
+
+ /**
+ * Encodes the specified SetLoggingServiceRequest message. Does not implicitly {@link google.container.v1.SetLoggingServiceRequest.verify|verify} messages.
+ * @param message SetLoggingServiceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetLoggingServiceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetLoggingServiceRequest message, length delimited. Does not implicitly {@link google.container.v1.SetLoggingServiceRequest.verify|verify} messages.
+ * @param message SetLoggingServiceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetLoggingServiceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetLoggingServiceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetLoggingServiceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetLoggingServiceRequest;
+
+ /**
+ * Decodes a SetLoggingServiceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetLoggingServiceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetLoggingServiceRequest;
+
+ /**
+ * Verifies a SetLoggingServiceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetLoggingServiceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetLoggingServiceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetLoggingServiceRequest;
+
+ /**
+ * Creates a plain object from a SetLoggingServiceRequest message. Also converts values to other types if specified.
+ * @param message SetLoggingServiceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetLoggingServiceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetLoggingServiceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetLoggingServiceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetMonitoringServiceRequest. */
+ interface ISetMonitoringServiceRequest {
+
+ /** SetMonitoringServiceRequest projectId */
+ projectId?: (string|null);
+
+ /** SetMonitoringServiceRequest zone */
+ zone?: (string|null);
+
+ /** SetMonitoringServiceRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetMonitoringServiceRequest monitoringService */
+ monitoringService?: (string|null);
+
+ /** SetMonitoringServiceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetMonitoringServiceRequest. */
+ class SetMonitoringServiceRequest implements ISetMonitoringServiceRequest {
+
+ /**
+ * Constructs a new SetMonitoringServiceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetMonitoringServiceRequest);
+
+ /** SetMonitoringServiceRequest projectId. */
+ public projectId: string;
+
+ /** SetMonitoringServiceRequest zone. */
+ public zone: string;
+
+ /** SetMonitoringServiceRequest clusterId. */
+ public clusterId: string;
+
+ /** SetMonitoringServiceRequest monitoringService. */
+ public monitoringService: string;
+
+ /** SetMonitoringServiceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetMonitoringServiceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetMonitoringServiceRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetMonitoringServiceRequest): google.container.v1.SetMonitoringServiceRequest;
+
+ /**
+ * Encodes the specified SetMonitoringServiceRequest message. Does not implicitly {@link google.container.v1.SetMonitoringServiceRequest.verify|verify} messages.
+ * @param message SetMonitoringServiceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetMonitoringServiceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetMonitoringServiceRequest message, length delimited. Does not implicitly {@link google.container.v1.SetMonitoringServiceRequest.verify|verify} messages.
+ * @param message SetMonitoringServiceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetMonitoringServiceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetMonitoringServiceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetMonitoringServiceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetMonitoringServiceRequest;
+
+ /**
+ * Decodes a SetMonitoringServiceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetMonitoringServiceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetMonitoringServiceRequest;
+
+ /**
+ * Verifies a SetMonitoringServiceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetMonitoringServiceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetMonitoringServiceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetMonitoringServiceRequest;
+
+ /**
+ * Creates a plain object from a SetMonitoringServiceRequest message. Also converts values to other types if specified.
+ * @param message SetMonitoringServiceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetMonitoringServiceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetMonitoringServiceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetMonitoringServiceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetAddonsConfigRequest. */
+ interface ISetAddonsConfigRequest {
+
+ /** SetAddonsConfigRequest projectId */
+ projectId?: (string|null);
+
+ /** SetAddonsConfigRequest zone */
+ zone?: (string|null);
+
+ /** SetAddonsConfigRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetAddonsConfigRequest addonsConfig */
+ addonsConfig?: (google.container.v1.IAddonsConfig|null);
+
+ /** SetAddonsConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetAddonsConfigRequest. */
+ class SetAddonsConfigRequest implements ISetAddonsConfigRequest {
+
+ /**
+ * Constructs a new SetAddonsConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetAddonsConfigRequest);
+
+ /** SetAddonsConfigRequest projectId. */
+ public projectId: string;
+
+ /** SetAddonsConfigRequest zone. */
+ public zone: string;
+
+ /** SetAddonsConfigRequest clusterId. */
+ public clusterId: string;
+
+ /** SetAddonsConfigRequest addonsConfig. */
+ public addonsConfig?: (google.container.v1.IAddonsConfig|null);
+
+ /** SetAddonsConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetAddonsConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetAddonsConfigRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetAddonsConfigRequest): google.container.v1.SetAddonsConfigRequest;
+
+ /**
+ * Encodes the specified SetAddonsConfigRequest message. Does not implicitly {@link google.container.v1.SetAddonsConfigRequest.verify|verify} messages.
+ * @param message SetAddonsConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetAddonsConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetAddonsConfigRequest message, length delimited. Does not implicitly {@link google.container.v1.SetAddonsConfigRequest.verify|verify} messages.
+ * @param message SetAddonsConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetAddonsConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetAddonsConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetAddonsConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetAddonsConfigRequest;
+
+ /**
+ * Decodes a SetAddonsConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetAddonsConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetAddonsConfigRequest;
+
+ /**
+ * Verifies a SetAddonsConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetAddonsConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetAddonsConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetAddonsConfigRequest;
+
+ /**
+ * Creates a plain object from a SetAddonsConfigRequest message. Also converts values to other types if specified.
+ * @param message SetAddonsConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetAddonsConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetAddonsConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetAddonsConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetLocationsRequest. */
+ interface ISetLocationsRequest {
+
+ /** SetLocationsRequest projectId */
+ projectId?: (string|null);
+
+ /** SetLocationsRequest zone */
+ zone?: (string|null);
+
+ /** SetLocationsRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetLocationsRequest locations */
+ locations?: (string[]|null);
+
+ /** SetLocationsRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetLocationsRequest. */
+ class SetLocationsRequest implements ISetLocationsRequest {
+
+ /**
+ * Constructs a new SetLocationsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetLocationsRequest);
+
+ /** SetLocationsRequest projectId. */
+ public projectId: string;
+
+ /** SetLocationsRequest zone. */
+ public zone: string;
+
+ /** SetLocationsRequest clusterId. */
+ public clusterId: string;
+
+ /** SetLocationsRequest locations. */
+ public locations: string[];
+
+ /** SetLocationsRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetLocationsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetLocationsRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetLocationsRequest): google.container.v1.SetLocationsRequest;
+
+ /**
+ * Encodes the specified SetLocationsRequest message. Does not implicitly {@link google.container.v1.SetLocationsRequest.verify|verify} messages.
+ * @param message SetLocationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetLocationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetLocationsRequest message, length delimited. Does not implicitly {@link google.container.v1.SetLocationsRequest.verify|verify} messages.
+ * @param message SetLocationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetLocationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetLocationsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetLocationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetLocationsRequest;
+
+ /**
+ * Decodes a SetLocationsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetLocationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetLocationsRequest;
+
+ /**
+ * Verifies a SetLocationsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetLocationsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetLocationsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetLocationsRequest;
+
+ /**
+ * Creates a plain object from a SetLocationsRequest message. Also converts values to other types if specified.
+ * @param message SetLocationsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetLocationsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetLocationsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetLocationsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateMasterRequest. */
+ interface IUpdateMasterRequest {
+
+ /** UpdateMasterRequest projectId */
+ projectId?: (string|null);
+
+ /** UpdateMasterRequest zone */
+ zone?: (string|null);
+
+ /** UpdateMasterRequest clusterId */
+ clusterId?: (string|null);
+
+ /** UpdateMasterRequest masterVersion */
+ masterVersion?: (string|null);
+
+ /** UpdateMasterRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents an UpdateMasterRequest. */
+ class UpdateMasterRequest implements IUpdateMasterRequest {
+
+ /**
+ * Constructs a new UpdateMasterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUpdateMasterRequest);
+
+ /** UpdateMasterRequest projectId. */
+ public projectId: string;
+
+ /** UpdateMasterRequest zone. */
+ public zone: string;
+
+ /** UpdateMasterRequest clusterId. */
+ public clusterId: string;
+
+ /** UpdateMasterRequest masterVersion. */
+ public masterVersion: string;
+
+ /** UpdateMasterRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new UpdateMasterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateMasterRequest instance
+ */
+ public static create(properties?: google.container.v1.IUpdateMasterRequest): google.container.v1.UpdateMasterRequest;
+
+ /**
+ * Encodes the specified UpdateMasterRequest message. Does not implicitly {@link google.container.v1.UpdateMasterRequest.verify|verify} messages.
+ * @param message UpdateMasterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUpdateMasterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateMasterRequest message, length delimited. Does not implicitly {@link google.container.v1.UpdateMasterRequest.verify|verify} messages.
+ * @param message UpdateMasterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUpdateMasterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateMasterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateMasterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UpdateMasterRequest;
+
+ /**
+ * Decodes an UpdateMasterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateMasterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UpdateMasterRequest;
+
+ /**
+ * Verifies an UpdateMasterRequest message.
+ * @param message Plain 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 UpdateMasterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateMasterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UpdateMasterRequest;
+
+ /**
+ * Creates a plain object from an UpdateMasterRequest message. Also converts values to other types if specified.
+ * @param message UpdateMasterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UpdateMasterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateMasterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateMasterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetMasterAuthRequest. */
+ interface ISetMasterAuthRequest {
+
+ /** SetMasterAuthRequest projectId */
+ projectId?: (string|null);
+
+ /** SetMasterAuthRequest zone */
+ zone?: (string|null);
+
+ /** SetMasterAuthRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetMasterAuthRequest action */
+ action?: (google.container.v1.SetMasterAuthRequest.Action|keyof typeof google.container.v1.SetMasterAuthRequest.Action|null);
+
+ /** SetMasterAuthRequest update */
+ update?: (google.container.v1.IMasterAuth|null);
+
+ /** SetMasterAuthRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetMasterAuthRequest. */
+ class SetMasterAuthRequest implements ISetMasterAuthRequest {
+
+ /**
+ * Constructs a new SetMasterAuthRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetMasterAuthRequest);
+
+ /** SetMasterAuthRequest projectId. */
+ public projectId: string;
+
+ /** SetMasterAuthRequest zone. */
+ public zone: string;
+
+ /** SetMasterAuthRequest clusterId. */
+ public clusterId: string;
+
+ /** SetMasterAuthRequest action. */
+ public action: (google.container.v1.SetMasterAuthRequest.Action|keyof typeof google.container.v1.SetMasterAuthRequest.Action);
+
+ /** SetMasterAuthRequest update. */
+ public update?: (google.container.v1.IMasterAuth|null);
+
+ /** SetMasterAuthRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetMasterAuthRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetMasterAuthRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetMasterAuthRequest): google.container.v1.SetMasterAuthRequest;
+
+ /**
+ * Encodes the specified SetMasterAuthRequest message. Does not implicitly {@link google.container.v1.SetMasterAuthRequest.verify|verify} messages.
+ * @param message SetMasterAuthRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetMasterAuthRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetMasterAuthRequest message, length delimited. Does not implicitly {@link google.container.v1.SetMasterAuthRequest.verify|verify} messages.
+ * @param message SetMasterAuthRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetMasterAuthRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetMasterAuthRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetMasterAuthRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetMasterAuthRequest;
+
+ /**
+ * Decodes a SetMasterAuthRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetMasterAuthRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetMasterAuthRequest;
+
+ /**
+ * Verifies a SetMasterAuthRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetMasterAuthRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetMasterAuthRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetMasterAuthRequest;
+
+ /**
+ * Creates a plain object from a SetMasterAuthRequest message. Also converts values to other types if specified.
+ * @param message SetMasterAuthRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetMasterAuthRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetMasterAuthRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetMasterAuthRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SetMasterAuthRequest {
+
+ /** Action enum. */
+ enum Action {
+ UNKNOWN = 0,
+ SET_PASSWORD = 1,
+ GENERATE_PASSWORD = 2,
+ SET_USERNAME = 3
+ }
+ }
+
+ /** Properties of a DeleteClusterRequest. */
+ interface IDeleteClusterRequest {
+
+ /** DeleteClusterRequest projectId */
+ projectId?: (string|null);
+
+ /** DeleteClusterRequest zone */
+ zone?: (string|null);
+
+ /** DeleteClusterRequest clusterId */
+ clusterId?: (string|null);
+
+ /** DeleteClusterRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteClusterRequest. */
+ class DeleteClusterRequest implements IDeleteClusterRequest {
+
+ /**
+ * Constructs a new DeleteClusterRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDeleteClusterRequest);
+
+ /** DeleteClusterRequest projectId. */
+ public projectId: string;
+
+ /** DeleteClusterRequest zone. */
+ public zone: string;
+
+ /** DeleteClusterRequest clusterId. */
+ public clusterId: string;
+
+ /** DeleteClusterRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteClusterRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteClusterRequest instance
+ */
+ public static create(properties?: google.container.v1.IDeleteClusterRequest): google.container.v1.DeleteClusterRequest;
+
+ /**
+ * Encodes the specified DeleteClusterRequest message. Does not implicitly {@link google.container.v1.DeleteClusterRequest.verify|verify} messages.
+ * @param message DeleteClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDeleteClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteClusterRequest message, length delimited. Does not implicitly {@link google.container.v1.DeleteClusterRequest.verify|verify} messages.
+ * @param message DeleteClusterRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDeleteClusterRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteClusterRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DeleteClusterRequest;
+
+ /**
+ * Decodes a DeleteClusterRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteClusterRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DeleteClusterRequest;
+
+ /**
+ * Verifies a DeleteClusterRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteClusterRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteClusterRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DeleteClusterRequest;
+
+ /**
+ * Creates a plain object from a DeleteClusterRequest message. Also converts values to other types if specified.
+ * @param message DeleteClusterRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DeleteClusterRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteClusterRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteClusterRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListClustersRequest. */
+ interface IListClustersRequest {
+
+ /** ListClustersRequest projectId */
+ projectId?: (string|null);
+
+ /** ListClustersRequest zone */
+ zone?: (string|null);
+
+ /** ListClustersRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a ListClustersRequest. */
+ class ListClustersRequest implements IListClustersRequest {
+
+ /**
+ * Constructs a new ListClustersRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListClustersRequest);
+
+ /** ListClustersRequest projectId. */
+ public projectId: string;
+
+ /** ListClustersRequest zone. */
+ public zone: string;
+
+ /** ListClustersRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new ListClustersRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListClustersRequest instance
+ */
+ public static create(properties?: google.container.v1.IListClustersRequest): google.container.v1.ListClustersRequest;
+
+ /**
+ * Encodes the specified ListClustersRequest message. Does not implicitly {@link google.container.v1.ListClustersRequest.verify|verify} messages.
+ * @param message ListClustersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListClustersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListClustersRequest message, length delimited. Does not implicitly {@link google.container.v1.ListClustersRequest.verify|verify} messages.
+ * @param message ListClustersRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListClustersRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListClustersRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListClustersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListClustersRequest;
+
+ /**
+ * Decodes a ListClustersRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListClustersRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListClustersRequest;
+
+ /**
+ * Verifies a ListClustersRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListClustersRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListClustersRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListClustersRequest;
+
+ /**
+ * Creates a plain object from a ListClustersRequest message. Also converts values to other types if specified.
+ * @param message ListClustersRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListClustersRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListClustersRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListClustersRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListClustersResponse. */
+ interface IListClustersResponse {
+
+ /** ListClustersResponse clusters */
+ clusters?: (google.container.v1.ICluster[]|null);
+
+ /** ListClustersResponse missingZones */
+ missingZones?: (string[]|null);
+ }
+
+ /** Represents a ListClustersResponse. */
+ class ListClustersResponse implements IListClustersResponse {
+
+ /**
+ * Constructs a new ListClustersResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListClustersResponse);
+
+ /** ListClustersResponse clusters. */
+ public clusters: google.container.v1.ICluster[];
+
+ /** ListClustersResponse missingZones. */
+ public missingZones: string[];
+
+ /**
+ * Creates a new ListClustersResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListClustersResponse instance
+ */
+ public static create(properties?: google.container.v1.IListClustersResponse): google.container.v1.ListClustersResponse;
+
+ /**
+ * Encodes the specified ListClustersResponse message. Does not implicitly {@link google.container.v1.ListClustersResponse.verify|verify} messages.
+ * @param message ListClustersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListClustersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListClustersResponse message, length delimited. Does not implicitly {@link google.container.v1.ListClustersResponse.verify|verify} messages.
+ * @param message ListClustersResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListClustersResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListClustersResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListClustersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListClustersResponse;
+
+ /**
+ * Decodes a ListClustersResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListClustersResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListClustersResponse;
+
+ /**
+ * Verifies a ListClustersResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListClustersResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListClustersResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListClustersResponse;
+
+ /**
+ * Creates a plain object from a ListClustersResponse message. Also converts values to other types if specified.
+ * @param message ListClustersResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListClustersResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListClustersResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListClustersResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOperationRequest. */
+ interface IGetOperationRequest {
+
+ /** GetOperationRequest projectId */
+ projectId?: (string|null);
+
+ /** GetOperationRequest zone */
+ zone?: (string|null);
+
+ /** GetOperationRequest operationId */
+ operationId?: (string|null);
+
+ /** GetOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOperationRequest. */
+ class GetOperationRequest implements IGetOperationRequest {
+
+ /**
+ * Constructs a new GetOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetOperationRequest);
+
+ /** GetOperationRequest projectId. */
+ public projectId: string;
+
+ /** GetOperationRequest zone. */
+ public zone: string;
+
+ /** GetOperationRequest operationId. */
+ public operationId: string;
+
+ /** GetOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOperationRequest instance
+ */
+ public static create(properties?: google.container.v1.IGetOperationRequest): google.container.v1.GetOperationRequest;
+
+ /**
+ * Encodes the specified GetOperationRequest message. Does not implicitly {@link google.container.v1.GetOperationRequest.verify|verify} messages.
+ * @param message GetOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOperationRequest message, length delimited. Does not implicitly {@link google.container.v1.GetOperationRequest.verify|verify} messages.
+ * @param message GetOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetOperationRequest;
+
+ /**
+ * Decodes a GetOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetOperationRequest;
+
+ /**
+ * Verifies a GetOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetOperationRequest;
+
+ /**
+ * Creates a plain object from a GetOperationRequest message. Also converts values to other types if specified.
+ * @param message GetOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOperationsRequest. */
+ interface IListOperationsRequest {
+
+ /** ListOperationsRequest projectId */
+ projectId?: (string|null);
+
+ /** ListOperationsRequest zone */
+ zone?: (string|null);
+
+ /** ListOperationsRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a ListOperationsRequest. */
+ class ListOperationsRequest implements IListOperationsRequest {
+
+ /**
+ * Constructs a new ListOperationsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListOperationsRequest);
+
+ /** ListOperationsRequest projectId. */
+ public projectId: string;
+
+ /** ListOperationsRequest zone. */
+ public zone: string;
+
+ /** ListOperationsRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new ListOperationsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOperationsRequest instance
+ */
+ public static create(properties?: google.container.v1.IListOperationsRequest): google.container.v1.ListOperationsRequest;
+
+ /**
+ * Encodes the specified ListOperationsRequest message. Does not implicitly {@link google.container.v1.ListOperationsRequest.verify|verify} messages.
+ * @param message ListOperationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOperationsRequest message, length delimited. Does not implicitly {@link google.container.v1.ListOperationsRequest.verify|verify} messages.
+ * @param message ListOperationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOperationsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOperationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListOperationsRequest;
+
+ /**
+ * Decodes a ListOperationsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOperationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListOperationsRequest;
+
+ /**
+ * Verifies a ListOperationsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListOperationsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOperationsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListOperationsRequest;
+
+ /**
+ * Creates a plain object from a ListOperationsRequest message. Also converts values to other types if specified.
+ * @param message ListOperationsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListOperationsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOperationsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOperationsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CancelOperationRequest. */
+ interface ICancelOperationRequest {
+
+ /** CancelOperationRequest projectId */
+ projectId?: (string|null);
+
+ /** CancelOperationRequest zone */
+ zone?: (string|null);
+
+ /** CancelOperationRequest operationId */
+ operationId?: (string|null);
+
+ /** CancelOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a CancelOperationRequest. */
+ class CancelOperationRequest implements ICancelOperationRequest {
+
+ /**
+ * Constructs a new CancelOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICancelOperationRequest);
+
+ /** CancelOperationRequest projectId. */
+ public projectId: string;
+
+ /** CancelOperationRequest zone. */
+ public zone: string;
+
+ /** CancelOperationRequest operationId. */
+ public operationId: string;
+
+ /** CancelOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new CancelOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CancelOperationRequest instance
+ */
+ public static create(properties?: google.container.v1.ICancelOperationRequest): google.container.v1.CancelOperationRequest;
+
+ /**
+ * Encodes the specified CancelOperationRequest message. Does not implicitly {@link google.container.v1.CancelOperationRequest.verify|verify} messages.
+ * @param message CancelOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CancelOperationRequest message, length delimited. Does not implicitly {@link google.container.v1.CancelOperationRequest.verify|verify} messages.
+ * @param message CancelOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CancelOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CancelOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CancelOperationRequest;
+
+ /**
+ * Decodes a CancelOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CancelOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CancelOperationRequest;
+
+ /**
+ * Verifies a CancelOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CancelOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CancelOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CancelOperationRequest;
+
+ /**
+ * Creates a plain object from a CancelOperationRequest message. Also converts values to other types if specified.
+ * @param message CancelOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CancelOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CancelOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CancelOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOperationsResponse. */
+ interface IListOperationsResponse {
+
+ /** ListOperationsResponse operations */
+ operations?: (google.container.v1.IOperation[]|null);
+
+ /** ListOperationsResponse missingZones */
+ missingZones?: (string[]|null);
+ }
+
+ /** Represents a ListOperationsResponse. */
+ class ListOperationsResponse implements IListOperationsResponse {
+
+ /**
+ * Constructs a new ListOperationsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListOperationsResponse);
+
+ /** ListOperationsResponse operations. */
+ public operations: google.container.v1.IOperation[];
+
+ /** ListOperationsResponse missingZones. */
+ public missingZones: string[];
+
+ /**
+ * Creates a new ListOperationsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOperationsResponse instance
+ */
+ public static create(properties?: google.container.v1.IListOperationsResponse): google.container.v1.ListOperationsResponse;
+
+ /**
+ * Encodes the specified ListOperationsResponse message. Does not implicitly {@link google.container.v1.ListOperationsResponse.verify|verify} messages.
+ * @param message ListOperationsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOperationsResponse message, length delimited. Does not implicitly {@link google.container.v1.ListOperationsResponse.verify|verify} messages.
+ * @param message ListOperationsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOperationsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOperationsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListOperationsResponse;
+
+ /**
+ * Decodes a ListOperationsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOperationsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListOperationsResponse;
+
+ /**
+ * Verifies a ListOperationsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListOperationsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOperationsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListOperationsResponse;
+
+ /**
+ * Creates a plain object from a ListOperationsResponse message. Also converts values to other types if specified.
+ * @param message ListOperationsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListOperationsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOperationsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOperationsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetServerConfigRequest. */
+ interface IGetServerConfigRequest {
+
+ /** GetServerConfigRequest projectId */
+ projectId?: (string|null);
+
+ /** GetServerConfigRequest zone */
+ zone?: (string|null);
+
+ /** GetServerConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetServerConfigRequest. */
+ class GetServerConfigRequest implements IGetServerConfigRequest {
+
+ /**
+ * Constructs a new GetServerConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetServerConfigRequest);
+
+ /** GetServerConfigRequest projectId. */
+ public projectId: string;
+
+ /** GetServerConfigRequest zone. */
+ public zone: string;
+
+ /** GetServerConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetServerConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetServerConfigRequest instance
+ */
+ public static create(properties?: google.container.v1.IGetServerConfigRequest): google.container.v1.GetServerConfigRequest;
+
+ /**
+ * Encodes the specified GetServerConfigRequest message. Does not implicitly {@link google.container.v1.GetServerConfigRequest.verify|verify} messages.
+ * @param message GetServerConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetServerConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetServerConfigRequest message, length delimited. Does not implicitly {@link google.container.v1.GetServerConfigRequest.verify|verify} messages.
+ * @param message GetServerConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetServerConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetServerConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetServerConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetServerConfigRequest;
+
+ /**
+ * Decodes a GetServerConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetServerConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetServerConfigRequest;
+
+ /**
+ * Verifies a GetServerConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetServerConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetServerConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetServerConfigRequest;
+
+ /**
+ * Creates a plain object from a GetServerConfigRequest message. Also converts values to other types if specified.
+ * @param message GetServerConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetServerConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetServerConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetServerConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServerConfig. */
+ interface IServerConfig {
+
+ /** ServerConfig defaultClusterVersion */
+ defaultClusterVersion?: (string|null);
+
+ /** ServerConfig validNodeVersions */
+ validNodeVersions?: (string[]|null);
+
+ /** ServerConfig defaultImageType */
+ defaultImageType?: (string|null);
+
+ /** ServerConfig validImageTypes */
+ validImageTypes?: (string[]|null);
+
+ /** ServerConfig validMasterVersions */
+ validMasterVersions?: (string[]|null);
+
+ /** ServerConfig channels */
+ channels?: (google.container.v1.ServerConfig.IReleaseChannelConfig[]|null);
+ }
+
+ /** Represents a ServerConfig. */
+ class ServerConfig implements IServerConfig {
+
+ /**
+ * Constructs a new ServerConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IServerConfig);
+
+ /** ServerConfig defaultClusterVersion. */
+ public defaultClusterVersion: string;
+
+ /** ServerConfig validNodeVersions. */
+ public validNodeVersions: string[];
+
+ /** ServerConfig defaultImageType. */
+ public defaultImageType: string;
+
+ /** ServerConfig validImageTypes. */
+ public validImageTypes: string[];
+
+ /** ServerConfig validMasterVersions. */
+ public validMasterVersions: string[];
+
+ /** ServerConfig channels. */
+ public channels: google.container.v1.ServerConfig.IReleaseChannelConfig[];
+
+ /**
+ * Creates a new ServerConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServerConfig instance
+ */
+ public static create(properties?: google.container.v1.IServerConfig): google.container.v1.ServerConfig;
+
+ /**
+ * Encodes the specified ServerConfig message. Does not implicitly {@link google.container.v1.ServerConfig.verify|verify} messages.
+ * @param message ServerConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IServerConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServerConfig message, length delimited. Does not implicitly {@link google.container.v1.ServerConfig.verify|verify} messages.
+ * @param message ServerConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IServerConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServerConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServerConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ServerConfig;
+
+ /**
+ * Decodes a ServerConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServerConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ServerConfig;
+
+ /**
+ * Verifies a ServerConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServerConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServerConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ServerConfig;
+
+ /**
+ * Creates a plain object from a ServerConfig message. Also converts values to other types if specified.
+ * @param message ServerConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ServerConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServerConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServerConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ServerConfig {
+
+ /** Properties of a ReleaseChannelConfig. */
+ interface IReleaseChannelConfig {
+
+ /** ReleaseChannelConfig channel */
+ channel?: (google.container.v1.ReleaseChannel.Channel|keyof typeof google.container.v1.ReleaseChannel.Channel|null);
+
+ /** ReleaseChannelConfig defaultVersion */
+ defaultVersion?: (string|null);
+
+ /** ReleaseChannelConfig validVersions */
+ validVersions?: (string[]|null);
+ }
+
+ /** Represents a ReleaseChannelConfig. */
+ class ReleaseChannelConfig implements IReleaseChannelConfig {
+
+ /**
+ * Constructs a new ReleaseChannelConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ServerConfig.IReleaseChannelConfig);
+
+ /** ReleaseChannelConfig channel. */
+ public channel: (google.container.v1.ReleaseChannel.Channel|keyof typeof google.container.v1.ReleaseChannel.Channel);
+
+ /** ReleaseChannelConfig defaultVersion. */
+ public defaultVersion: string;
+
+ /** ReleaseChannelConfig validVersions. */
+ public validVersions: string[];
+
+ /**
+ * Creates a new ReleaseChannelConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReleaseChannelConfig instance
+ */
+ public static create(properties?: google.container.v1.ServerConfig.IReleaseChannelConfig): google.container.v1.ServerConfig.ReleaseChannelConfig;
+
+ /**
+ * Encodes the specified ReleaseChannelConfig message. Does not implicitly {@link google.container.v1.ServerConfig.ReleaseChannelConfig.verify|verify} messages.
+ * @param message ReleaseChannelConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ServerConfig.IReleaseChannelConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReleaseChannelConfig message, length delimited. Does not implicitly {@link google.container.v1.ServerConfig.ReleaseChannelConfig.verify|verify} messages.
+ * @param message ReleaseChannelConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ServerConfig.IReleaseChannelConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReleaseChannelConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReleaseChannelConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ServerConfig.ReleaseChannelConfig;
+
+ /**
+ * Decodes a ReleaseChannelConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReleaseChannelConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ServerConfig.ReleaseChannelConfig;
+
+ /**
+ * Verifies a ReleaseChannelConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReleaseChannelConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReleaseChannelConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ServerConfig.ReleaseChannelConfig;
+
+ /**
+ * Creates a plain object from a ReleaseChannelConfig message. Also converts values to other types if specified.
+ * @param message ReleaseChannelConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ServerConfig.ReleaseChannelConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReleaseChannelConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReleaseChannelConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a CreateNodePoolRequest. */
+ interface ICreateNodePoolRequest {
+
+ /** CreateNodePoolRequest projectId */
+ projectId?: (string|null);
+
+ /** CreateNodePoolRequest zone */
+ zone?: (string|null);
+
+ /** CreateNodePoolRequest clusterId */
+ clusterId?: (string|null);
+
+ /** CreateNodePoolRequest nodePool */
+ nodePool?: (google.container.v1.INodePool|null);
+
+ /** CreateNodePoolRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a CreateNodePoolRequest. */
+ class CreateNodePoolRequest implements ICreateNodePoolRequest {
+
+ /**
+ * Constructs a new CreateNodePoolRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICreateNodePoolRequest);
+
+ /** CreateNodePoolRequest projectId. */
+ public projectId: string;
+
+ /** CreateNodePoolRequest zone. */
+ public zone: string;
+
+ /** CreateNodePoolRequest clusterId. */
+ public clusterId: string;
+
+ /** CreateNodePoolRequest nodePool. */
+ public nodePool?: (google.container.v1.INodePool|null);
+
+ /** CreateNodePoolRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new CreateNodePoolRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateNodePoolRequest instance
+ */
+ public static create(properties?: google.container.v1.ICreateNodePoolRequest): google.container.v1.CreateNodePoolRequest;
+
+ /**
+ * Encodes the specified CreateNodePoolRequest message. Does not implicitly {@link google.container.v1.CreateNodePoolRequest.verify|verify} messages.
+ * @param message CreateNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICreateNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateNodePoolRequest message, length delimited. Does not implicitly {@link google.container.v1.CreateNodePoolRequest.verify|verify} messages.
+ * @param message CreateNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICreateNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateNodePoolRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CreateNodePoolRequest;
+
+ /**
+ * Decodes a CreateNodePoolRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CreateNodePoolRequest;
+
+ /**
+ * Verifies a CreateNodePoolRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateNodePoolRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateNodePoolRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CreateNodePoolRequest;
+
+ /**
+ * Creates a plain object from a CreateNodePoolRequest message. Also converts values to other types if specified.
+ * @param message CreateNodePoolRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CreateNodePoolRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateNodePoolRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateNodePoolRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteNodePoolRequest. */
+ interface IDeleteNodePoolRequest {
+
+ /** DeleteNodePoolRequest projectId */
+ projectId?: (string|null);
+
+ /** DeleteNodePoolRequest zone */
+ zone?: (string|null);
+
+ /** DeleteNodePoolRequest clusterId */
+ clusterId?: (string|null);
+
+ /** DeleteNodePoolRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** DeleteNodePoolRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteNodePoolRequest. */
+ class DeleteNodePoolRequest implements IDeleteNodePoolRequest {
+
+ /**
+ * Constructs a new DeleteNodePoolRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDeleteNodePoolRequest);
+
+ /** DeleteNodePoolRequest projectId. */
+ public projectId: string;
+
+ /** DeleteNodePoolRequest zone. */
+ public zone: string;
+
+ /** DeleteNodePoolRequest clusterId. */
+ public clusterId: string;
+
+ /** DeleteNodePoolRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** DeleteNodePoolRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteNodePoolRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteNodePoolRequest instance
+ */
+ public static create(properties?: google.container.v1.IDeleteNodePoolRequest): google.container.v1.DeleteNodePoolRequest;
+
+ /**
+ * Encodes the specified DeleteNodePoolRequest message. Does not implicitly {@link google.container.v1.DeleteNodePoolRequest.verify|verify} messages.
+ * @param message DeleteNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDeleteNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteNodePoolRequest message, length delimited. Does not implicitly {@link google.container.v1.DeleteNodePoolRequest.verify|verify} messages.
+ * @param message DeleteNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDeleteNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteNodePoolRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DeleteNodePoolRequest;
+
+ /**
+ * Decodes a DeleteNodePoolRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DeleteNodePoolRequest;
+
+ /**
+ * Verifies a DeleteNodePoolRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteNodePoolRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteNodePoolRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DeleteNodePoolRequest;
+
+ /**
+ * Creates a plain object from a DeleteNodePoolRequest message. Also converts values to other types if specified.
+ * @param message DeleteNodePoolRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DeleteNodePoolRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteNodePoolRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteNodePoolRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNodePoolsRequest. */
+ interface IListNodePoolsRequest {
+
+ /** ListNodePoolsRequest projectId */
+ projectId?: (string|null);
+
+ /** ListNodePoolsRequest zone */
+ zone?: (string|null);
+
+ /** ListNodePoolsRequest clusterId */
+ clusterId?: (string|null);
+
+ /** ListNodePoolsRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a ListNodePoolsRequest. */
+ class ListNodePoolsRequest implements IListNodePoolsRequest {
+
+ /**
+ * Constructs a new ListNodePoolsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListNodePoolsRequest);
+
+ /** ListNodePoolsRequest projectId. */
+ public projectId: string;
+
+ /** ListNodePoolsRequest zone. */
+ public zone: string;
+
+ /** ListNodePoolsRequest clusterId. */
+ public clusterId: string;
+
+ /** ListNodePoolsRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new ListNodePoolsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNodePoolsRequest instance
+ */
+ public static create(properties?: google.container.v1.IListNodePoolsRequest): google.container.v1.ListNodePoolsRequest;
+
+ /**
+ * Encodes the specified ListNodePoolsRequest message. Does not implicitly {@link google.container.v1.ListNodePoolsRequest.verify|verify} messages.
+ * @param message ListNodePoolsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListNodePoolsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNodePoolsRequest message, length delimited. Does not implicitly {@link google.container.v1.ListNodePoolsRequest.verify|verify} messages.
+ * @param message ListNodePoolsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListNodePoolsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNodePoolsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNodePoolsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListNodePoolsRequest;
+
+ /**
+ * Decodes a ListNodePoolsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNodePoolsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListNodePoolsRequest;
+
+ /**
+ * Verifies a ListNodePoolsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListNodePoolsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNodePoolsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListNodePoolsRequest;
+
+ /**
+ * Creates a plain object from a ListNodePoolsRequest message. Also converts values to other types if specified.
+ * @param message ListNodePoolsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListNodePoolsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNodePoolsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNodePoolsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetNodePoolRequest. */
+ interface IGetNodePoolRequest {
+
+ /** GetNodePoolRequest projectId */
+ projectId?: (string|null);
+
+ /** GetNodePoolRequest zone */
+ zone?: (string|null);
+
+ /** GetNodePoolRequest clusterId */
+ clusterId?: (string|null);
+
+ /** GetNodePoolRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** GetNodePoolRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetNodePoolRequest. */
+ class GetNodePoolRequest implements IGetNodePoolRequest {
+
+ /**
+ * Constructs a new GetNodePoolRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetNodePoolRequest);
+
+ /** GetNodePoolRequest projectId. */
+ public projectId: string;
+
+ /** GetNodePoolRequest zone. */
+ public zone: string;
+
+ /** GetNodePoolRequest clusterId. */
+ public clusterId: string;
+
+ /** GetNodePoolRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** GetNodePoolRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetNodePoolRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetNodePoolRequest instance
+ */
+ public static create(properties?: google.container.v1.IGetNodePoolRequest): google.container.v1.GetNodePoolRequest;
+
+ /**
+ * Encodes the specified GetNodePoolRequest message. Does not implicitly {@link google.container.v1.GetNodePoolRequest.verify|verify} messages.
+ * @param message GetNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetNodePoolRequest message, length delimited. Does not implicitly {@link google.container.v1.GetNodePoolRequest.verify|verify} messages.
+ * @param message GetNodePoolRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetNodePoolRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetNodePoolRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetNodePoolRequest;
+
+ /**
+ * Decodes a GetNodePoolRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetNodePoolRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetNodePoolRequest;
+
+ /**
+ * Verifies a GetNodePoolRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetNodePoolRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetNodePoolRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetNodePoolRequest;
+
+ /**
+ * Creates a plain object from a GetNodePoolRequest message. Also converts values to other types if specified.
+ * @param message GetNodePoolRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetNodePoolRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetNodePoolRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetNodePoolRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BlueGreenSettings. */
+ interface IBlueGreenSettings {
+
+ /** BlueGreenSettings standardRolloutPolicy */
+ standardRolloutPolicy?: (google.container.v1.BlueGreenSettings.IStandardRolloutPolicy|null);
+
+ /** BlueGreenSettings nodePoolSoakDuration */
+ nodePoolSoakDuration?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a BlueGreenSettings. */
+ class BlueGreenSettings implements IBlueGreenSettings {
+
+ /**
+ * Constructs a new BlueGreenSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IBlueGreenSettings);
+
+ /** BlueGreenSettings standardRolloutPolicy. */
+ public standardRolloutPolicy?: (google.container.v1.BlueGreenSettings.IStandardRolloutPolicy|null);
+
+ /** BlueGreenSettings nodePoolSoakDuration. */
+ public nodePoolSoakDuration?: (google.protobuf.IDuration|null);
+
+ /** BlueGreenSettings rolloutPolicy. */
+ public rolloutPolicy?: "standardRolloutPolicy";
+
+ /** BlueGreenSettings _nodePoolSoakDuration. */
+ public _nodePoolSoakDuration?: "nodePoolSoakDuration";
+
+ /**
+ * Creates a new BlueGreenSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BlueGreenSettings instance
+ */
+ public static create(properties?: google.container.v1.IBlueGreenSettings): google.container.v1.BlueGreenSettings;
+
+ /**
+ * Encodes the specified BlueGreenSettings message. Does not implicitly {@link google.container.v1.BlueGreenSettings.verify|verify} messages.
+ * @param message BlueGreenSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IBlueGreenSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BlueGreenSettings message, length delimited. Does not implicitly {@link google.container.v1.BlueGreenSettings.verify|verify} messages.
+ * @param message BlueGreenSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IBlueGreenSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BlueGreenSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BlueGreenSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.BlueGreenSettings;
+
+ /**
+ * Decodes a BlueGreenSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BlueGreenSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.BlueGreenSettings;
+
+ /**
+ * Verifies a BlueGreenSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BlueGreenSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BlueGreenSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.BlueGreenSettings;
+
+ /**
+ * Creates a plain object from a BlueGreenSettings message. Also converts values to other types if specified.
+ * @param message BlueGreenSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.BlueGreenSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BlueGreenSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BlueGreenSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BlueGreenSettings {
+
+ /** Properties of a StandardRolloutPolicy. */
+ interface IStandardRolloutPolicy {
+
+ /** StandardRolloutPolicy batchPercentage */
+ batchPercentage?: (number|null);
+
+ /** StandardRolloutPolicy batchNodeCount */
+ batchNodeCount?: (number|null);
+
+ /** StandardRolloutPolicy batchSoakDuration */
+ batchSoakDuration?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a StandardRolloutPolicy. */
+ class StandardRolloutPolicy implements IStandardRolloutPolicy {
+
+ /**
+ * Constructs a new StandardRolloutPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.BlueGreenSettings.IStandardRolloutPolicy);
+
+ /** StandardRolloutPolicy batchPercentage. */
+ public batchPercentage?: (number|null);
+
+ /** StandardRolloutPolicy batchNodeCount. */
+ public batchNodeCount?: (number|null);
+
+ /** StandardRolloutPolicy batchSoakDuration. */
+ public batchSoakDuration?: (google.protobuf.IDuration|null);
+
+ /** StandardRolloutPolicy updateBatchSize. */
+ public updateBatchSize?: ("batchPercentage"|"batchNodeCount");
+
+ /** StandardRolloutPolicy _batchSoakDuration. */
+ public _batchSoakDuration?: "batchSoakDuration";
+
+ /**
+ * Creates a new StandardRolloutPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StandardRolloutPolicy instance
+ */
+ public static create(properties?: google.container.v1.BlueGreenSettings.IStandardRolloutPolicy): google.container.v1.BlueGreenSettings.StandardRolloutPolicy;
+
+ /**
+ * Encodes the specified StandardRolloutPolicy message. Does not implicitly {@link google.container.v1.BlueGreenSettings.StandardRolloutPolicy.verify|verify} messages.
+ * @param message StandardRolloutPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.BlueGreenSettings.IStandardRolloutPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StandardRolloutPolicy message, length delimited. Does not implicitly {@link google.container.v1.BlueGreenSettings.StandardRolloutPolicy.verify|verify} messages.
+ * @param message StandardRolloutPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.BlueGreenSettings.IStandardRolloutPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StandardRolloutPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StandardRolloutPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.BlueGreenSettings.StandardRolloutPolicy;
+
+ /**
+ * Decodes a StandardRolloutPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StandardRolloutPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.BlueGreenSettings.StandardRolloutPolicy;
+
+ /**
+ * Verifies a StandardRolloutPolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StandardRolloutPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StandardRolloutPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.BlueGreenSettings.StandardRolloutPolicy;
+
+ /**
+ * Creates a plain object from a StandardRolloutPolicy message. Also converts values to other types if specified.
+ * @param message StandardRolloutPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.BlueGreenSettings.StandardRolloutPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StandardRolloutPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StandardRolloutPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a NodePool. */
+ interface INodePool {
+
+ /** NodePool name */
+ name?: (string|null);
+
+ /** NodePool config */
+ config?: (google.container.v1.INodeConfig|null);
+
+ /** NodePool initialNodeCount */
+ initialNodeCount?: (number|null);
+
+ /** NodePool locations */
+ locations?: (string[]|null);
+
+ /** NodePool networkConfig */
+ networkConfig?: (google.container.v1.INodeNetworkConfig|null);
+
+ /** NodePool selfLink */
+ selfLink?: (string|null);
+
+ /** NodePool version */
+ version?: (string|null);
+
+ /** NodePool instanceGroupUrls */
+ instanceGroupUrls?: (string[]|null);
+
+ /** NodePool status */
+ status?: (google.container.v1.NodePool.Status|keyof typeof google.container.v1.NodePool.Status|null);
+
+ /** NodePool statusMessage */
+ statusMessage?: (string|null);
+
+ /** NodePool autoscaling */
+ autoscaling?: (google.container.v1.INodePoolAutoscaling|null);
+
+ /** NodePool management */
+ management?: (google.container.v1.INodeManagement|null);
+
+ /** NodePool maxPodsConstraint */
+ maxPodsConstraint?: (google.container.v1.IMaxPodsConstraint|null);
+
+ /** NodePool conditions */
+ conditions?: (google.container.v1.IStatusCondition[]|null);
+
+ /** NodePool podIpv4CidrSize */
+ podIpv4CidrSize?: (number|null);
+
+ /** NodePool upgradeSettings */
+ upgradeSettings?: (google.container.v1.NodePool.IUpgradeSettings|null);
+
+ /** NodePool updateInfo */
+ updateInfo?: (google.container.v1.NodePool.IUpdateInfo|null);
+ }
+
+ /** Represents a NodePool. */
+ class NodePool implements INodePool {
+
+ /**
+ * Constructs a new NodePool.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodePool);
+
+ /** NodePool name. */
+ public name: string;
+
+ /** NodePool config. */
+ public config?: (google.container.v1.INodeConfig|null);
+
+ /** NodePool initialNodeCount. */
+ public initialNodeCount: number;
+
+ /** NodePool locations. */
+ public locations: string[];
+
+ /** NodePool networkConfig. */
+ public networkConfig?: (google.container.v1.INodeNetworkConfig|null);
+
+ /** NodePool selfLink. */
+ public selfLink: string;
+
+ /** NodePool version. */
+ public version: string;
+
+ /** NodePool instanceGroupUrls. */
+ public instanceGroupUrls: string[];
+
+ /** NodePool status. */
+ public status: (google.container.v1.NodePool.Status|keyof typeof google.container.v1.NodePool.Status);
+
+ /** NodePool statusMessage. */
+ public statusMessage: string;
+
+ /** NodePool autoscaling. */
+ public autoscaling?: (google.container.v1.INodePoolAutoscaling|null);
+
+ /** NodePool management. */
+ public management?: (google.container.v1.INodeManagement|null);
+
+ /** NodePool maxPodsConstraint. */
+ public maxPodsConstraint?: (google.container.v1.IMaxPodsConstraint|null);
+
+ /** NodePool conditions. */
+ public conditions: google.container.v1.IStatusCondition[];
+
+ /** NodePool podIpv4CidrSize. */
+ public podIpv4CidrSize: number;
+
+ /** NodePool upgradeSettings. */
+ public upgradeSettings?: (google.container.v1.NodePool.IUpgradeSettings|null);
+
+ /** NodePool updateInfo. */
+ public updateInfo?: (google.container.v1.NodePool.IUpdateInfo|null);
+
+ /**
+ * Creates a new NodePool instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodePool instance
+ */
+ public static create(properties?: google.container.v1.INodePool): google.container.v1.NodePool;
+
+ /**
+ * Encodes the specified NodePool message. Does not implicitly {@link google.container.v1.NodePool.verify|verify} messages.
+ * @param message NodePool message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodePool, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodePool message, length delimited. Does not implicitly {@link google.container.v1.NodePool.verify|verify} messages.
+ * @param message NodePool message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodePool, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodePool message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodePool
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePool;
+
+ /**
+ * Decodes a NodePool message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodePool
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePool;
+
+ /**
+ * Verifies a NodePool message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodePool message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodePool
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePool;
+
+ /**
+ * Creates a plain object from a NodePool message. Also converts values to other types if specified.
+ * @param message NodePool
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePool, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodePool to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodePool
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NodePool {
+
+ /** Properties of an UpgradeSettings. */
+ interface IUpgradeSettings {
+
+ /** UpgradeSettings maxSurge */
+ maxSurge?: (number|null);
+
+ /** UpgradeSettings maxUnavailable */
+ maxUnavailable?: (number|null);
+
+ /** UpgradeSettings strategy */
+ strategy?: (google.container.v1.NodePoolUpdateStrategy|keyof typeof google.container.v1.NodePoolUpdateStrategy|null);
+
+ /** UpgradeSettings blueGreenSettings */
+ blueGreenSettings?: (google.container.v1.IBlueGreenSettings|null);
+ }
+
+ /** Represents an UpgradeSettings. */
+ class UpgradeSettings implements IUpgradeSettings {
+
+ /**
+ * Constructs a new UpgradeSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.NodePool.IUpgradeSettings);
+
+ /** UpgradeSettings maxSurge. */
+ public maxSurge: number;
+
+ /** UpgradeSettings maxUnavailable. */
+ public maxUnavailable: number;
+
+ /** UpgradeSettings strategy. */
+ public strategy?: (google.container.v1.NodePoolUpdateStrategy|keyof typeof google.container.v1.NodePoolUpdateStrategy|null);
+
+ /** UpgradeSettings blueGreenSettings. */
+ public blueGreenSettings?: (google.container.v1.IBlueGreenSettings|null);
+
+ /** UpgradeSettings _strategy. */
+ public _strategy?: "strategy";
+
+ /** UpgradeSettings _blueGreenSettings. */
+ public _blueGreenSettings?: "blueGreenSettings";
+
+ /**
+ * Creates a new UpgradeSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpgradeSettings instance
+ */
+ public static create(properties?: google.container.v1.NodePool.IUpgradeSettings): google.container.v1.NodePool.UpgradeSettings;
+
+ /**
+ * Encodes the specified UpgradeSettings message. Does not implicitly {@link google.container.v1.NodePool.UpgradeSettings.verify|verify} messages.
+ * @param message UpgradeSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.NodePool.IUpgradeSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpgradeSettings message, length delimited. Does not implicitly {@link google.container.v1.NodePool.UpgradeSettings.verify|verify} messages.
+ * @param message UpgradeSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.NodePool.IUpgradeSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpgradeSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpgradeSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePool.UpgradeSettings;
+
+ /**
+ * Decodes an UpgradeSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpgradeSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePool.UpgradeSettings;
+
+ /**
+ * Verifies an UpgradeSettings message.
+ * @param message Plain 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 UpgradeSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpgradeSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePool.UpgradeSettings;
+
+ /**
+ * Creates a plain object from an UpgradeSettings message. Also converts values to other types if specified.
+ * @param message UpgradeSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePool.UpgradeSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpgradeSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpgradeSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateInfo. */
+ interface IUpdateInfo {
+
+ /** UpdateInfo blueGreenInfo */
+ blueGreenInfo?: (google.container.v1.NodePool.UpdateInfo.IBlueGreenInfo|null);
+ }
+
+ /** Represents an UpdateInfo. */
+ class UpdateInfo implements IUpdateInfo {
+
+ /**
+ * Constructs a new UpdateInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.NodePool.IUpdateInfo);
+
+ /** UpdateInfo blueGreenInfo. */
+ public blueGreenInfo?: (google.container.v1.NodePool.UpdateInfo.IBlueGreenInfo|null);
+
+ /**
+ * Creates a new UpdateInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateInfo instance
+ */
+ public static create(properties?: google.container.v1.NodePool.IUpdateInfo): google.container.v1.NodePool.UpdateInfo;
+
+ /**
+ * Encodes the specified UpdateInfo message. Does not implicitly {@link google.container.v1.NodePool.UpdateInfo.verify|verify} messages.
+ * @param message UpdateInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.NodePool.IUpdateInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateInfo message, length delimited. Does not implicitly {@link google.container.v1.NodePool.UpdateInfo.verify|verify} messages.
+ * @param message UpdateInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.NodePool.IUpdateInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePool.UpdateInfo;
+
+ /**
+ * Decodes an UpdateInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePool.UpdateInfo;
+
+ /**
+ * Verifies an UpdateInfo message.
+ * @param message Plain 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 UpdateInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePool.UpdateInfo;
+
+ /**
+ * Creates a plain object from an UpdateInfo message. Also converts values to other types if specified.
+ * @param message UpdateInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePool.UpdateInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace UpdateInfo {
+
+ /** Properties of a BlueGreenInfo. */
+ interface IBlueGreenInfo {
+
+ /** BlueGreenInfo phase */
+ phase?: (google.container.v1.NodePool.UpdateInfo.BlueGreenInfo.Phase|keyof typeof google.container.v1.NodePool.UpdateInfo.BlueGreenInfo.Phase|null);
+
+ /** BlueGreenInfo blueInstanceGroupUrls */
+ blueInstanceGroupUrls?: (string[]|null);
+
+ /** BlueGreenInfo greenInstanceGroupUrls */
+ greenInstanceGroupUrls?: (string[]|null);
+
+ /** BlueGreenInfo bluePoolDeletionStartTime */
+ bluePoolDeletionStartTime?: (string|null);
+
+ /** BlueGreenInfo greenPoolVersion */
+ greenPoolVersion?: (string|null);
+ }
+
+ /** Represents a BlueGreenInfo. */
+ class BlueGreenInfo implements IBlueGreenInfo {
+
+ /**
+ * Constructs a new BlueGreenInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.NodePool.UpdateInfo.IBlueGreenInfo);
+
+ /** BlueGreenInfo phase. */
+ public phase: (google.container.v1.NodePool.UpdateInfo.BlueGreenInfo.Phase|keyof typeof google.container.v1.NodePool.UpdateInfo.BlueGreenInfo.Phase);
+
+ /** BlueGreenInfo blueInstanceGroupUrls. */
+ public blueInstanceGroupUrls: string[];
+
+ /** BlueGreenInfo greenInstanceGroupUrls. */
+ public greenInstanceGroupUrls: string[];
+
+ /** BlueGreenInfo bluePoolDeletionStartTime. */
+ public bluePoolDeletionStartTime: string;
+
+ /** BlueGreenInfo greenPoolVersion. */
+ public greenPoolVersion: string;
+
+ /**
+ * Creates a new BlueGreenInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BlueGreenInfo instance
+ */
+ public static create(properties?: google.container.v1.NodePool.UpdateInfo.IBlueGreenInfo): google.container.v1.NodePool.UpdateInfo.BlueGreenInfo;
+
+ /**
+ * Encodes the specified BlueGreenInfo message. Does not implicitly {@link google.container.v1.NodePool.UpdateInfo.BlueGreenInfo.verify|verify} messages.
+ * @param message BlueGreenInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.NodePool.UpdateInfo.IBlueGreenInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BlueGreenInfo message, length delimited. Does not implicitly {@link google.container.v1.NodePool.UpdateInfo.BlueGreenInfo.verify|verify} messages.
+ * @param message BlueGreenInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.NodePool.UpdateInfo.IBlueGreenInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BlueGreenInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BlueGreenInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePool.UpdateInfo.BlueGreenInfo;
+
+ /**
+ * Decodes a BlueGreenInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BlueGreenInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePool.UpdateInfo.BlueGreenInfo;
+
+ /**
+ * Verifies a BlueGreenInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BlueGreenInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BlueGreenInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePool.UpdateInfo.BlueGreenInfo;
+
+ /**
+ * Creates a plain object from a BlueGreenInfo message. Also converts values to other types if specified.
+ * @param message BlueGreenInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePool.UpdateInfo.BlueGreenInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BlueGreenInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BlueGreenInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BlueGreenInfo {
+
+ /** Phase enum. */
+ enum Phase {
+ PHASE_UNSPECIFIED = 0,
+ UPDATE_STARTED = 1,
+ CREATING_GREEN_POOL = 2,
+ CORDONING_BLUE_POOL = 3,
+ DRAINING_BLUE_POOL = 4,
+ NODE_POOL_SOAKING = 5,
+ DELETING_BLUE_POOL = 6,
+ ROLLBACK_STARTED = 7
+ }
+ }
+ }
+
+ /** Status enum. */
+ enum Status {
+ STATUS_UNSPECIFIED = 0,
+ PROVISIONING = 1,
+ RUNNING = 2,
+ RUNNING_WITH_ERROR = 3,
+ RECONCILING = 4,
+ STOPPING = 5,
+ ERROR = 6
+ }
+ }
+
+ /** Properties of a NodeManagement. */
+ interface INodeManagement {
+
+ /** NodeManagement autoUpgrade */
+ autoUpgrade?: (boolean|null);
+
+ /** NodeManagement autoRepair */
+ autoRepair?: (boolean|null);
+
+ /** NodeManagement upgradeOptions */
+ upgradeOptions?: (google.container.v1.IAutoUpgradeOptions|null);
+ }
+
+ /** Represents a NodeManagement. */
+ class NodeManagement implements INodeManagement {
+
+ /**
+ * Constructs a new NodeManagement.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodeManagement);
+
+ /** NodeManagement autoUpgrade. */
+ public autoUpgrade: boolean;
+
+ /** NodeManagement autoRepair. */
+ public autoRepair: boolean;
+
+ /** NodeManagement upgradeOptions. */
+ public upgradeOptions?: (google.container.v1.IAutoUpgradeOptions|null);
+
+ /**
+ * Creates a new NodeManagement instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodeManagement instance
+ */
+ public static create(properties?: google.container.v1.INodeManagement): google.container.v1.NodeManagement;
+
+ /**
+ * Encodes the specified NodeManagement message. Does not implicitly {@link google.container.v1.NodeManagement.verify|verify} messages.
+ * @param message NodeManagement message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodeManagement, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodeManagement message, length delimited. Does not implicitly {@link google.container.v1.NodeManagement.verify|verify} messages.
+ * @param message NodeManagement message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodeManagement, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodeManagement message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodeManagement
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodeManagement;
+
+ /**
+ * Decodes a NodeManagement message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodeManagement
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodeManagement;
+
+ /**
+ * Verifies a NodeManagement message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodeManagement message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodeManagement
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodeManagement;
+
+ /**
+ * Creates a plain object from a NodeManagement message. Also converts values to other types if specified.
+ * @param message NodeManagement
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodeManagement, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodeManagement to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodeManagement
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AutoUpgradeOptions. */
+ interface IAutoUpgradeOptions {
+
+ /** AutoUpgradeOptions autoUpgradeStartTime */
+ autoUpgradeStartTime?: (string|null);
+
+ /** AutoUpgradeOptions description */
+ description?: (string|null);
+ }
+
+ /** Represents an AutoUpgradeOptions. */
+ class AutoUpgradeOptions implements IAutoUpgradeOptions {
+
+ /**
+ * Constructs a new AutoUpgradeOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAutoUpgradeOptions);
+
+ /** AutoUpgradeOptions autoUpgradeStartTime. */
+ public autoUpgradeStartTime: string;
+
+ /** AutoUpgradeOptions description. */
+ public description: string;
+
+ /**
+ * Creates a new AutoUpgradeOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AutoUpgradeOptions instance
+ */
+ public static create(properties?: google.container.v1.IAutoUpgradeOptions): google.container.v1.AutoUpgradeOptions;
+
+ /**
+ * Encodes the specified AutoUpgradeOptions message. Does not implicitly {@link google.container.v1.AutoUpgradeOptions.verify|verify} messages.
+ * @param message AutoUpgradeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAutoUpgradeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AutoUpgradeOptions message, length delimited. Does not implicitly {@link google.container.v1.AutoUpgradeOptions.verify|verify} messages.
+ * @param message AutoUpgradeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAutoUpgradeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AutoUpgradeOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AutoUpgradeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AutoUpgradeOptions;
+
+ /**
+ * Decodes an AutoUpgradeOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AutoUpgradeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AutoUpgradeOptions;
+
+ /**
+ * Verifies an AutoUpgradeOptions message.
+ * @param message Plain 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 AutoUpgradeOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AutoUpgradeOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.AutoUpgradeOptions;
+
+ /**
+ * Creates a plain object from an AutoUpgradeOptions message. Also converts values to other types if specified.
+ * @param message AutoUpgradeOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.AutoUpgradeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AutoUpgradeOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AutoUpgradeOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MaintenancePolicy. */
+ interface IMaintenancePolicy {
+
+ /** MaintenancePolicy window */
+ window?: (google.container.v1.IMaintenanceWindow|null);
+
+ /** MaintenancePolicy resourceVersion */
+ resourceVersion?: (string|null);
+ }
+
+ /** Represents a MaintenancePolicy. */
+ class MaintenancePolicy implements IMaintenancePolicy {
+
+ /**
+ * Constructs a new MaintenancePolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMaintenancePolicy);
+
+ /** MaintenancePolicy window. */
+ public window?: (google.container.v1.IMaintenanceWindow|null);
+
+ /** MaintenancePolicy resourceVersion. */
+ public resourceVersion: string;
+
+ /**
+ * Creates a new MaintenancePolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MaintenancePolicy instance
+ */
+ public static create(properties?: google.container.v1.IMaintenancePolicy): google.container.v1.MaintenancePolicy;
+
+ /**
+ * Encodes the specified MaintenancePolicy message. Does not implicitly {@link google.container.v1.MaintenancePolicy.verify|verify} messages.
+ * @param message MaintenancePolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMaintenancePolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MaintenancePolicy message, length delimited. Does not implicitly {@link google.container.v1.MaintenancePolicy.verify|verify} messages.
+ * @param message MaintenancePolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMaintenancePolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MaintenancePolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MaintenancePolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MaintenancePolicy;
+
+ /**
+ * Decodes a MaintenancePolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MaintenancePolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MaintenancePolicy;
+
+ /**
+ * Verifies a MaintenancePolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MaintenancePolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MaintenancePolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MaintenancePolicy;
+
+ /**
+ * Creates a plain object from a MaintenancePolicy message. Also converts values to other types if specified.
+ * @param message MaintenancePolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MaintenancePolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MaintenancePolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MaintenancePolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MaintenanceWindow. */
+ interface IMaintenanceWindow {
+
+ /** MaintenanceWindow dailyMaintenanceWindow */
+ dailyMaintenanceWindow?: (google.container.v1.IDailyMaintenanceWindow|null);
+
+ /** MaintenanceWindow recurringWindow */
+ recurringWindow?: (google.container.v1.IRecurringTimeWindow|null);
+
+ /** MaintenanceWindow maintenanceExclusions */
+ maintenanceExclusions?: ({ [k: string]: google.container.v1.ITimeWindow }|null);
+ }
+
+ /** Represents a MaintenanceWindow. */
+ class MaintenanceWindow implements IMaintenanceWindow {
+
+ /**
+ * Constructs a new MaintenanceWindow.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMaintenanceWindow);
+
+ /** MaintenanceWindow dailyMaintenanceWindow. */
+ public dailyMaintenanceWindow?: (google.container.v1.IDailyMaintenanceWindow|null);
+
+ /** MaintenanceWindow recurringWindow. */
+ public recurringWindow?: (google.container.v1.IRecurringTimeWindow|null);
+
+ /** MaintenanceWindow maintenanceExclusions. */
+ public maintenanceExclusions: { [k: string]: google.container.v1.ITimeWindow };
+
+ /** MaintenanceWindow policy. */
+ public policy?: ("dailyMaintenanceWindow"|"recurringWindow");
+
+ /**
+ * Creates a new MaintenanceWindow instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MaintenanceWindow instance
+ */
+ public static create(properties?: google.container.v1.IMaintenanceWindow): google.container.v1.MaintenanceWindow;
+
+ /**
+ * Encodes the specified MaintenanceWindow message. Does not implicitly {@link google.container.v1.MaintenanceWindow.verify|verify} messages.
+ * @param message MaintenanceWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMaintenanceWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MaintenanceWindow message, length delimited. Does not implicitly {@link google.container.v1.MaintenanceWindow.verify|verify} messages.
+ * @param message MaintenanceWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMaintenanceWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MaintenanceWindow message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MaintenanceWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MaintenanceWindow;
+
+ /**
+ * Decodes a MaintenanceWindow message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MaintenanceWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MaintenanceWindow;
+
+ /**
+ * Verifies a MaintenanceWindow message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MaintenanceWindow message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MaintenanceWindow
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MaintenanceWindow;
+
+ /**
+ * Creates a plain object from a MaintenanceWindow message. Also converts values to other types if specified.
+ * @param message MaintenanceWindow
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MaintenanceWindow, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MaintenanceWindow to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MaintenanceWindow
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TimeWindow. */
+ interface ITimeWindow {
+
+ /** TimeWindow maintenanceExclusionOptions */
+ maintenanceExclusionOptions?: (google.container.v1.IMaintenanceExclusionOptions|null);
+
+ /** TimeWindow startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+
+ /** TimeWindow endTime */
+ endTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a TimeWindow. */
+ class TimeWindow implements ITimeWindow {
+
+ /**
+ * Constructs a new TimeWindow.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ITimeWindow);
+
+ /** TimeWindow maintenanceExclusionOptions. */
+ public maintenanceExclusionOptions?: (google.container.v1.IMaintenanceExclusionOptions|null);
+
+ /** TimeWindow startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /** TimeWindow endTime. */
+ public endTime?: (google.protobuf.ITimestamp|null);
+
+ /** TimeWindow options. */
+ public options?: "maintenanceExclusionOptions";
+
+ /**
+ * Creates a new TimeWindow instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TimeWindow instance
+ */
+ public static create(properties?: google.container.v1.ITimeWindow): google.container.v1.TimeWindow;
+
+ /**
+ * Encodes the specified TimeWindow message. Does not implicitly {@link google.container.v1.TimeWindow.verify|verify} messages.
+ * @param message TimeWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ITimeWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TimeWindow message, length delimited. Does not implicitly {@link google.container.v1.TimeWindow.verify|verify} messages.
+ * @param message TimeWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ITimeWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TimeWindow message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TimeWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.TimeWindow;
+
+ /**
+ * Decodes a TimeWindow message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TimeWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.TimeWindow;
+
+ /**
+ * Verifies a TimeWindow message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TimeWindow message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TimeWindow
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.TimeWindow;
+
+ /**
+ * Creates a plain object from a TimeWindow message. Also converts values to other types if specified.
+ * @param message TimeWindow
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.TimeWindow, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TimeWindow to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TimeWindow
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MaintenanceExclusionOptions. */
+ interface IMaintenanceExclusionOptions {
+
+ /** MaintenanceExclusionOptions scope */
+ scope?: (google.container.v1.MaintenanceExclusionOptions.Scope|keyof typeof google.container.v1.MaintenanceExclusionOptions.Scope|null);
+ }
+
+ /** Represents a MaintenanceExclusionOptions. */
+ class MaintenanceExclusionOptions implements IMaintenanceExclusionOptions {
+
+ /**
+ * Constructs a new MaintenanceExclusionOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMaintenanceExclusionOptions);
+
+ /** MaintenanceExclusionOptions scope. */
+ public scope: (google.container.v1.MaintenanceExclusionOptions.Scope|keyof typeof google.container.v1.MaintenanceExclusionOptions.Scope);
+
+ /**
+ * Creates a new MaintenanceExclusionOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MaintenanceExclusionOptions instance
+ */
+ public static create(properties?: google.container.v1.IMaintenanceExclusionOptions): google.container.v1.MaintenanceExclusionOptions;
+
+ /**
+ * Encodes the specified MaintenanceExclusionOptions message. Does not implicitly {@link google.container.v1.MaintenanceExclusionOptions.verify|verify} messages.
+ * @param message MaintenanceExclusionOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMaintenanceExclusionOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MaintenanceExclusionOptions message, length delimited. Does not implicitly {@link google.container.v1.MaintenanceExclusionOptions.verify|verify} messages.
+ * @param message MaintenanceExclusionOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMaintenanceExclusionOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MaintenanceExclusionOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MaintenanceExclusionOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MaintenanceExclusionOptions;
+
+ /**
+ * Decodes a MaintenanceExclusionOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MaintenanceExclusionOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MaintenanceExclusionOptions;
+
+ /**
+ * Verifies a MaintenanceExclusionOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MaintenanceExclusionOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MaintenanceExclusionOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MaintenanceExclusionOptions;
+
+ /**
+ * Creates a plain object from a MaintenanceExclusionOptions message. Also converts values to other types if specified.
+ * @param message MaintenanceExclusionOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MaintenanceExclusionOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MaintenanceExclusionOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MaintenanceExclusionOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MaintenanceExclusionOptions {
+
+ /** Scope enum. */
+ enum Scope {
+ NO_UPGRADES = 0,
+ NO_MINOR_UPGRADES = 1,
+ NO_MINOR_OR_NODE_UPGRADES = 2
+ }
+ }
+
+ /** Properties of a RecurringTimeWindow. */
+ interface IRecurringTimeWindow {
+
+ /** RecurringTimeWindow window */
+ window?: (google.container.v1.ITimeWindow|null);
+
+ /** RecurringTimeWindow recurrence */
+ recurrence?: (string|null);
+ }
+
+ /** Represents a RecurringTimeWindow. */
+ class RecurringTimeWindow implements IRecurringTimeWindow {
+
+ /**
+ * Constructs a new RecurringTimeWindow.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IRecurringTimeWindow);
+
+ /** RecurringTimeWindow window. */
+ public window?: (google.container.v1.ITimeWindow|null);
+
+ /** RecurringTimeWindow recurrence. */
+ public recurrence: string;
+
+ /**
+ * Creates a new RecurringTimeWindow instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RecurringTimeWindow instance
+ */
+ public static create(properties?: google.container.v1.IRecurringTimeWindow): google.container.v1.RecurringTimeWindow;
+
+ /**
+ * Encodes the specified RecurringTimeWindow message. Does not implicitly {@link google.container.v1.RecurringTimeWindow.verify|verify} messages.
+ * @param message RecurringTimeWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IRecurringTimeWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RecurringTimeWindow message, length delimited. Does not implicitly {@link google.container.v1.RecurringTimeWindow.verify|verify} messages.
+ * @param message RecurringTimeWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IRecurringTimeWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RecurringTimeWindow message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RecurringTimeWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.RecurringTimeWindow;
+
+ /**
+ * Decodes a RecurringTimeWindow message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RecurringTimeWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.RecurringTimeWindow;
+
+ /**
+ * Verifies a RecurringTimeWindow message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RecurringTimeWindow message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RecurringTimeWindow
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.RecurringTimeWindow;
+
+ /**
+ * Creates a plain object from a RecurringTimeWindow message. Also converts values to other types if specified.
+ * @param message RecurringTimeWindow
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.RecurringTimeWindow, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RecurringTimeWindow to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RecurringTimeWindow
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DailyMaintenanceWindow. */
+ interface IDailyMaintenanceWindow {
+
+ /** DailyMaintenanceWindow startTime */
+ startTime?: (string|null);
+
+ /** DailyMaintenanceWindow duration */
+ duration?: (string|null);
+ }
+
+ /** Represents a DailyMaintenanceWindow. */
+ class DailyMaintenanceWindow implements IDailyMaintenanceWindow {
+
+ /**
+ * Constructs a new DailyMaintenanceWindow.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDailyMaintenanceWindow);
+
+ /** DailyMaintenanceWindow startTime. */
+ public startTime: string;
+
+ /** DailyMaintenanceWindow duration. */
+ public duration: string;
+
+ /**
+ * Creates a new DailyMaintenanceWindow instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DailyMaintenanceWindow instance
+ */
+ public static create(properties?: google.container.v1.IDailyMaintenanceWindow): google.container.v1.DailyMaintenanceWindow;
+
+ /**
+ * Encodes the specified DailyMaintenanceWindow message. Does not implicitly {@link google.container.v1.DailyMaintenanceWindow.verify|verify} messages.
+ * @param message DailyMaintenanceWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDailyMaintenanceWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DailyMaintenanceWindow message, length delimited. Does not implicitly {@link google.container.v1.DailyMaintenanceWindow.verify|verify} messages.
+ * @param message DailyMaintenanceWindow message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDailyMaintenanceWindow, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DailyMaintenanceWindow message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DailyMaintenanceWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DailyMaintenanceWindow;
+
+ /**
+ * Decodes a DailyMaintenanceWindow message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DailyMaintenanceWindow
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DailyMaintenanceWindow;
+
+ /**
+ * Verifies a DailyMaintenanceWindow message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DailyMaintenanceWindow message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DailyMaintenanceWindow
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DailyMaintenanceWindow;
+
+ /**
+ * Creates a plain object from a DailyMaintenanceWindow message. Also converts values to other types if specified.
+ * @param message DailyMaintenanceWindow
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DailyMaintenanceWindow, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DailyMaintenanceWindow to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DailyMaintenanceWindow
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetNodePoolManagementRequest. */
+ interface ISetNodePoolManagementRequest {
+
+ /** SetNodePoolManagementRequest projectId */
+ projectId?: (string|null);
+
+ /** SetNodePoolManagementRequest zone */
+ zone?: (string|null);
+
+ /** SetNodePoolManagementRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetNodePoolManagementRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** SetNodePoolManagementRequest management */
+ management?: (google.container.v1.INodeManagement|null);
+
+ /** SetNodePoolManagementRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetNodePoolManagementRequest. */
+ class SetNodePoolManagementRequest implements ISetNodePoolManagementRequest {
+
+ /**
+ * Constructs a new SetNodePoolManagementRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetNodePoolManagementRequest);
+
+ /** SetNodePoolManagementRequest projectId. */
+ public projectId: string;
+
+ /** SetNodePoolManagementRequest zone. */
+ public zone: string;
+
+ /** SetNodePoolManagementRequest clusterId. */
+ public clusterId: string;
+
+ /** SetNodePoolManagementRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** SetNodePoolManagementRequest management. */
+ public management?: (google.container.v1.INodeManagement|null);
+
+ /** SetNodePoolManagementRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetNodePoolManagementRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetNodePoolManagementRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetNodePoolManagementRequest): google.container.v1.SetNodePoolManagementRequest;
+
+ /**
+ * Encodes the specified SetNodePoolManagementRequest message. Does not implicitly {@link google.container.v1.SetNodePoolManagementRequest.verify|verify} messages.
+ * @param message SetNodePoolManagementRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetNodePoolManagementRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetNodePoolManagementRequest message, length delimited. Does not implicitly {@link google.container.v1.SetNodePoolManagementRequest.verify|verify} messages.
+ * @param message SetNodePoolManagementRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetNodePoolManagementRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetNodePoolManagementRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetNodePoolManagementRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetNodePoolManagementRequest;
+
+ /**
+ * Decodes a SetNodePoolManagementRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetNodePoolManagementRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetNodePoolManagementRequest;
+
+ /**
+ * Verifies a SetNodePoolManagementRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetNodePoolManagementRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetNodePoolManagementRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetNodePoolManagementRequest;
+
+ /**
+ * Creates a plain object from a SetNodePoolManagementRequest message. Also converts values to other types if specified.
+ * @param message SetNodePoolManagementRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetNodePoolManagementRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetNodePoolManagementRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetNodePoolManagementRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetNodePoolSizeRequest. */
+ interface ISetNodePoolSizeRequest {
+
+ /** SetNodePoolSizeRequest projectId */
+ projectId?: (string|null);
+
+ /** SetNodePoolSizeRequest zone */
+ zone?: (string|null);
+
+ /** SetNodePoolSizeRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetNodePoolSizeRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** SetNodePoolSizeRequest nodeCount */
+ nodeCount?: (number|null);
+
+ /** SetNodePoolSizeRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetNodePoolSizeRequest. */
+ class SetNodePoolSizeRequest implements ISetNodePoolSizeRequest {
+
+ /**
+ * Constructs a new SetNodePoolSizeRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetNodePoolSizeRequest);
+
+ /** SetNodePoolSizeRequest projectId. */
+ public projectId: string;
+
+ /** SetNodePoolSizeRequest zone. */
+ public zone: string;
+
+ /** SetNodePoolSizeRequest clusterId. */
+ public clusterId: string;
+
+ /** SetNodePoolSizeRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** SetNodePoolSizeRequest nodeCount. */
+ public nodeCount: number;
+
+ /** SetNodePoolSizeRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetNodePoolSizeRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetNodePoolSizeRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetNodePoolSizeRequest): google.container.v1.SetNodePoolSizeRequest;
+
+ /**
+ * Encodes the specified SetNodePoolSizeRequest message. Does not implicitly {@link google.container.v1.SetNodePoolSizeRequest.verify|verify} messages.
+ * @param message SetNodePoolSizeRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetNodePoolSizeRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetNodePoolSizeRequest message, length delimited. Does not implicitly {@link google.container.v1.SetNodePoolSizeRequest.verify|verify} messages.
+ * @param message SetNodePoolSizeRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetNodePoolSizeRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetNodePoolSizeRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetNodePoolSizeRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetNodePoolSizeRequest;
+
+ /**
+ * Decodes a SetNodePoolSizeRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetNodePoolSizeRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetNodePoolSizeRequest;
+
+ /**
+ * Verifies a SetNodePoolSizeRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetNodePoolSizeRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetNodePoolSizeRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetNodePoolSizeRequest;
+
+ /**
+ * Creates a plain object from a SetNodePoolSizeRequest message. Also converts values to other types if specified.
+ * @param message SetNodePoolSizeRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetNodePoolSizeRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetNodePoolSizeRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetNodePoolSizeRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CompleteNodePoolUpgradeRequest. */
+ interface ICompleteNodePoolUpgradeRequest {
+
+ /** CompleteNodePoolUpgradeRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a CompleteNodePoolUpgradeRequest. */
+ class CompleteNodePoolUpgradeRequest implements ICompleteNodePoolUpgradeRequest {
+
+ /**
+ * Constructs a new CompleteNodePoolUpgradeRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICompleteNodePoolUpgradeRequest);
+
+ /** CompleteNodePoolUpgradeRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new CompleteNodePoolUpgradeRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CompleteNodePoolUpgradeRequest instance
+ */
+ public static create(properties?: google.container.v1.ICompleteNodePoolUpgradeRequest): google.container.v1.CompleteNodePoolUpgradeRequest;
+
+ /**
+ * Encodes the specified CompleteNodePoolUpgradeRequest message. Does not implicitly {@link google.container.v1.CompleteNodePoolUpgradeRequest.verify|verify} messages.
+ * @param message CompleteNodePoolUpgradeRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICompleteNodePoolUpgradeRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CompleteNodePoolUpgradeRequest message, length delimited. Does not implicitly {@link google.container.v1.CompleteNodePoolUpgradeRequest.verify|verify} messages.
+ * @param message CompleteNodePoolUpgradeRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICompleteNodePoolUpgradeRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CompleteNodePoolUpgradeRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CompleteNodePoolUpgradeRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CompleteNodePoolUpgradeRequest;
+
+ /**
+ * Decodes a CompleteNodePoolUpgradeRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CompleteNodePoolUpgradeRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CompleteNodePoolUpgradeRequest;
+
+ /**
+ * Verifies a CompleteNodePoolUpgradeRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CompleteNodePoolUpgradeRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CompleteNodePoolUpgradeRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CompleteNodePoolUpgradeRequest;
+
+ /**
+ * Creates a plain object from a CompleteNodePoolUpgradeRequest message. Also converts values to other types if specified.
+ * @param message CompleteNodePoolUpgradeRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CompleteNodePoolUpgradeRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CompleteNodePoolUpgradeRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CompleteNodePoolUpgradeRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RollbackNodePoolUpgradeRequest. */
+ interface IRollbackNodePoolUpgradeRequest {
+
+ /** RollbackNodePoolUpgradeRequest projectId */
+ projectId?: (string|null);
+
+ /** RollbackNodePoolUpgradeRequest zone */
+ zone?: (string|null);
+
+ /** RollbackNodePoolUpgradeRequest clusterId */
+ clusterId?: (string|null);
+
+ /** RollbackNodePoolUpgradeRequest nodePoolId */
+ nodePoolId?: (string|null);
+
+ /** RollbackNodePoolUpgradeRequest name */
+ name?: (string|null);
+
+ /** RollbackNodePoolUpgradeRequest respectPdb */
+ respectPdb?: (boolean|null);
+ }
+
+ /** Represents a RollbackNodePoolUpgradeRequest. */
+ class RollbackNodePoolUpgradeRequest implements IRollbackNodePoolUpgradeRequest {
+
+ /**
+ * Constructs a new RollbackNodePoolUpgradeRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IRollbackNodePoolUpgradeRequest);
+
+ /** RollbackNodePoolUpgradeRequest projectId. */
+ public projectId: string;
+
+ /** RollbackNodePoolUpgradeRequest zone. */
+ public zone: string;
+
+ /** RollbackNodePoolUpgradeRequest clusterId. */
+ public clusterId: string;
+
+ /** RollbackNodePoolUpgradeRequest nodePoolId. */
+ public nodePoolId: string;
+
+ /** RollbackNodePoolUpgradeRequest name. */
+ public name: string;
+
+ /** RollbackNodePoolUpgradeRequest respectPdb. */
+ public respectPdb: boolean;
+
+ /**
+ * Creates a new RollbackNodePoolUpgradeRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RollbackNodePoolUpgradeRequest instance
+ */
+ public static create(properties?: google.container.v1.IRollbackNodePoolUpgradeRequest): google.container.v1.RollbackNodePoolUpgradeRequest;
+
+ /**
+ * Encodes the specified RollbackNodePoolUpgradeRequest message. Does not implicitly {@link google.container.v1.RollbackNodePoolUpgradeRequest.verify|verify} messages.
+ * @param message RollbackNodePoolUpgradeRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IRollbackNodePoolUpgradeRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RollbackNodePoolUpgradeRequest message, length delimited. Does not implicitly {@link google.container.v1.RollbackNodePoolUpgradeRequest.verify|verify} messages.
+ * @param message RollbackNodePoolUpgradeRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IRollbackNodePoolUpgradeRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RollbackNodePoolUpgradeRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RollbackNodePoolUpgradeRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.RollbackNodePoolUpgradeRequest;
+
+ /**
+ * Decodes a RollbackNodePoolUpgradeRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RollbackNodePoolUpgradeRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.RollbackNodePoolUpgradeRequest;
+
+ /**
+ * Verifies a RollbackNodePoolUpgradeRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RollbackNodePoolUpgradeRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RollbackNodePoolUpgradeRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.RollbackNodePoolUpgradeRequest;
+
+ /**
+ * Creates a plain object from a RollbackNodePoolUpgradeRequest message. Also converts values to other types if specified.
+ * @param message RollbackNodePoolUpgradeRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.RollbackNodePoolUpgradeRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RollbackNodePoolUpgradeRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RollbackNodePoolUpgradeRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNodePoolsResponse. */
+ interface IListNodePoolsResponse {
+
+ /** ListNodePoolsResponse nodePools */
+ nodePools?: (google.container.v1.INodePool[]|null);
+ }
+
+ /** Represents a ListNodePoolsResponse. */
+ class ListNodePoolsResponse implements IListNodePoolsResponse {
+
+ /**
+ * Constructs a new ListNodePoolsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListNodePoolsResponse);
+
+ /** ListNodePoolsResponse nodePools. */
+ public nodePools: google.container.v1.INodePool[];
+
+ /**
+ * Creates a new ListNodePoolsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNodePoolsResponse instance
+ */
+ public static create(properties?: google.container.v1.IListNodePoolsResponse): google.container.v1.ListNodePoolsResponse;
+
+ /**
+ * Encodes the specified ListNodePoolsResponse message. Does not implicitly {@link google.container.v1.ListNodePoolsResponse.verify|verify} messages.
+ * @param message ListNodePoolsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListNodePoolsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNodePoolsResponse message, length delimited. Does not implicitly {@link google.container.v1.ListNodePoolsResponse.verify|verify} messages.
+ * @param message ListNodePoolsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListNodePoolsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNodePoolsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNodePoolsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListNodePoolsResponse;
+
+ /**
+ * Decodes a ListNodePoolsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNodePoolsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListNodePoolsResponse;
+
+ /**
+ * Verifies a ListNodePoolsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListNodePoolsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNodePoolsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListNodePoolsResponse;
+
+ /**
+ * Creates a plain object from a ListNodePoolsResponse message. Also converts values to other types if specified.
+ * @param message ListNodePoolsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListNodePoolsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNodePoolsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNodePoolsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ClusterAutoscaling. */
+ interface IClusterAutoscaling {
+
+ /** ClusterAutoscaling enableNodeAutoprovisioning */
+ enableNodeAutoprovisioning?: (boolean|null);
+
+ /** ClusterAutoscaling resourceLimits */
+ resourceLimits?: (google.container.v1.IResourceLimit[]|null);
+
+ /** ClusterAutoscaling autoscalingProfile */
+ autoscalingProfile?: (google.container.v1.ClusterAutoscaling.AutoscalingProfile|keyof typeof google.container.v1.ClusterAutoscaling.AutoscalingProfile|null);
+
+ /** ClusterAutoscaling autoprovisioningNodePoolDefaults */
+ autoprovisioningNodePoolDefaults?: (google.container.v1.IAutoprovisioningNodePoolDefaults|null);
+
+ /** ClusterAutoscaling autoprovisioningLocations */
+ autoprovisioningLocations?: (string[]|null);
+ }
+
+ /** Represents a ClusterAutoscaling. */
+ class ClusterAutoscaling implements IClusterAutoscaling {
+
+ /**
+ * Constructs a new ClusterAutoscaling.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IClusterAutoscaling);
+
+ /** ClusterAutoscaling enableNodeAutoprovisioning. */
+ public enableNodeAutoprovisioning: boolean;
+
+ /** ClusterAutoscaling resourceLimits. */
+ public resourceLimits: google.container.v1.IResourceLimit[];
+
+ /** ClusterAutoscaling autoscalingProfile. */
+ public autoscalingProfile: (google.container.v1.ClusterAutoscaling.AutoscalingProfile|keyof typeof google.container.v1.ClusterAutoscaling.AutoscalingProfile);
+
+ /** ClusterAutoscaling autoprovisioningNodePoolDefaults. */
+ public autoprovisioningNodePoolDefaults?: (google.container.v1.IAutoprovisioningNodePoolDefaults|null);
+
+ /** ClusterAutoscaling autoprovisioningLocations. */
+ public autoprovisioningLocations: string[];
+
+ /**
+ * Creates a new ClusterAutoscaling instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ClusterAutoscaling instance
+ */
+ public static create(properties?: google.container.v1.IClusterAutoscaling): google.container.v1.ClusterAutoscaling;
+
+ /**
+ * Encodes the specified ClusterAutoscaling message. Does not implicitly {@link google.container.v1.ClusterAutoscaling.verify|verify} messages.
+ * @param message ClusterAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IClusterAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ClusterAutoscaling message, length delimited. Does not implicitly {@link google.container.v1.ClusterAutoscaling.verify|verify} messages.
+ * @param message ClusterAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IClusterAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ClusterAutoscaling message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ClusterAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ClusterAutoscaling;
+
+ /**
+ * Decodes a ClusterAutoscaling message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ClusterAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ClusterAutoscaling;
+
+ /**
+ * Verifies a ClusterAutoscaling message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ClusterAutoscaling message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ClusterAutoscaling
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ClusterAutoscaling;
+
+ /**
+ * Creates a plain object from a ClusterAutoscaling message. Also converts values to other types if specified.
+ * @param message ClusterAutoscaling
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ClusterAutoscaling, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ClusterAutoscaling to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ClusterAutoscaling
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ClusterAutoscaling {
+
+ /** AutoscalingProfile enum. */
+ enum AutoscalingProfile {
+ PROFILE_UNSPECIFIED = 0,
+ OPTIMIZE_UTILIZATION = 1,
+ BALANCED = 2
+ }
+ }
+
+ /** Properties of an AutoprovisioningNodePoolDefaults. */
+ interface IAutoprovisioningNodePoolDefaults {
+
+ /** AutoprovisioningNodePoolDefaults oauthScopes */
+ oauthScopes?: (string[]|null);
+
+ /** AutoprovisioningNodePoolDefaults serviceAccount */
+ serviceAccount?: (string|null);
+
+ /** AutoprovisioningNodePoolDefaults upgradeSettings */
+ upgradeSettings?: (google.container.v1.NodePool.IUpgradeSettings|null);
+
+ /** AutoprovisioningNodePoolDefaults management */
+ management?: (google.container.v1.INodeManagement|null);
+
+ /** AutoprovisioningNodePoolDefaults minCpuPlatform */
+ minCpuPlatform?: (string|null);
+
+ /** AutoprovisioningNodePoolDefaults diskSizeGb */
+ diskSizeGb?: (number|null);
+
+ /** AutoprovisioningNodePoolDefaults diskType */
+ diskType?: (string|null);
+
+ /** AutoprovisioningNodePoolDefaults shieldedInstanceConfig */
+ shieldedInstanceConfig?: (google.container.v1.IShieldedInstanceConfig|null);
+
+ /** AutoprovisioningNodePoolDefaults bootDiskKmsKey */
+ bootDiskKmsKey?: (string|null);
+
+ /** AutoprovisioningNodePoolDefaults imageType */
+ imageType?: (string|null);
+ }
+
+ /** Represents an AutoprovisioningNodePoolDefaults. */
+ class AutoprovisioningNodePoolDefaults implements IAutoprovisioningNodePoolDefaults {
+
+ /**
+ * Constructs a new AutoprovisioningNodePoolDefaults.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAutoprovisioningNodePoolDefaults);
+
+ /** AutoprovisioningNodePoolDefaults oauthScopes. */
+ public oauthScopes: string[];
+
+ /** AutoprovisioningNodePoolDefaults serviceAccount. */
+ public serviceAccount: string;
+
+ /** AutoprovisioningNodePoolDefaults upgradeSettings. */
+ public upgradeSettings?: (google.container.v1.NodePool.IUpgradeSettings|null);
+
+ /** AutoprovisioningNodePoolDefaults management. */
+ public management?: (google.container.v1.INodeManagement|null);
+
+ /** AutoprovisioningNodePoolDefaults minCpuPlatform. */
+ public minCpuPlatform: string;
+
+ /** AutoprovisioningNodePoolDefaults diskSizeGb. */
+ public diskSizeGb: number;
+
+ /** AutoprovisioningNodePoolDefaults diskType. */
+ public diskType: string;
+
+ /** AutoprovisioningNodePoolDefaults shieldedInstanceConfig. */
+ public shieldedInstanceConfig?: (google.container.v1.IShieldedInstanceConfig|null);
+
+ /** AutoprovisioningNodePoolDefaults bootDiskKmsKey. */
+ public bootDiskKmsKey: string;
+
+ /** AutoprovisioningNodePoolDefaults imageType. */
+ public imageType: string;
+
+ /**
+ * Creates a new AutoprovisioningNodePoolDefaults instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AutoprovisioningNodePoolDefaults instance
+ */
+ public static create(properties?: google.container.v1.IAutoprovisioningNodePoolDefaults): google.container.v1.AutoprovisioningNodePoolDefaults;
+
+ /**
+ * Encodes the specified AutoprovisioningNodePoolDefaults message. Does not implicitly {@link google.container.v1.AutoprovisioningNodePoolDefaults.verify|verify} messages.
+ * @param message AutoprovisioningNodePoolDefaults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAutoprovisioningNodePoolDefaults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AutoprovisioningNodePoolDefaults message, length delimited. Does not implicitly {@link google.container.v1.AutoprovisioningNodePoolDefaults.verify|verify} messages.
+ * @param message AutoprovisioningNodePoolDefaults message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAutoprovisioningNodePoolDefaults, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AutoprovisioningNodePoolDefaults message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AutoprovisioningNodePoolDefaults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AutoprovisioningNodePoolDefaults;
+
+ /**
+ * Decodes an AutoprovisioningNodePoolDefaults message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AutoprovisioningNodePoolDefaults
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AutoprovisioningNodePoolDefaults;
+
+ /**
+ * Verifies an AutoprovisioningNodePoolDefaults message.
+ * @param message Plain 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 AutoprovisioningNodePoolDefaults message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AutoprovisioningNodePoolDefaults
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.AutoprovisioningNodePoolDefaults;
+
+ /**
+ * Creates a plain object from an AutoprovisioningNodePoolDefaults message. Also converts values to other types if specified.
+ * @param message AutoprovisioningNodePoolDefaults
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.AutoprovisioningNodePoolDefaults, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AutoprovisioningNodePoolDefaults to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AutoprovisioningNodePoolDefaults
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ResourceLimit. */
+ interface IResourceLimit {
+
+ /** ResourceLimit resourceType */
+ resourceType?: (string|null);
+
+ /** ResourceLimit minimum */
+ minimum?: (number|Long|string|null);
+
+ /** ResourceLimit maximum */
+ maximum?: (number|Long|string|null);
+ }
+
+ /** Represents a ResourceLimit. */
+ class ResourceLimit implements IResourceLimit {
+
+ /**
+ * Constructs a new ResourceLimit.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IResourceLimit);
+
+ /** ResourceLimit resourceType. */
+ public resourceType: string;
+
+ /** ResourceLimit minimum. */
+ public minimum: (number|Long|string);
+
+ /** ResourceLimit maximum. */
+ public maximum: (number|Long|string);
+
+ /**
+ * Creates a new ResourceLimit instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceLimit instance
+ */
+ public static create(properties?: google.container.v1.IResourceLimit): google.container.v1.ResourceLimit;
+
+ /**
+ * Encodes the specified ResourceLimit message. Does not implicitly {@link google.container.v1.ResourceLimit.verify|verify} messages.
+ * @param message ResourceLimit message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IResourceLimit, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceLimit message, length delimited. Does not implicitly {@link google.container.v1.ResourceLimit.verify|verify} messages.
+ * @param message ResourceLimit message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IResourceLimit, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceLimit message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceLimit
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ResourceLimit;
+
+ /**
+ * Decodes a ResourceLimit message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceLimit
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ResourceLimit;
+
+ /**
+ * Verifies a ResourceLimit message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceLimit message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceLimit
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ResourceLimit;
+
+ /**
+ * Creates a plain object from a ResourceLimit message. Also converts values to other types if specified.
+ * @param message ResourceLimit
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ResourceLimit, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceLimit to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceLimit
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodePoolAutoscaling. */
+ interface INodePoolAutoscaling {
+
+ /** NodePoolAutoscaling enabled */
+ enabled?: (boolean|null);
+
+ /** NodePoolAutoscaling minNodeCount */
+ minNodeCount?: (number|null);
+
+ /** NodePoolAutoscaling maxNodeCount */
+ maxNodeCount?: (number|null);
+
+ /** NodePoolAutoscaling autoprovisioned */
+ autoprovisioned?: (boolean|null);
+
+ /** NodePoolAutoscaling locationPolicy */
+ locationPolicy?: (google.container.v1.NodePoolAutoscaling.LocationPolicy|keyof typeof google.container.v1.NodePoolAutoscaling.LocationPolicy|null);
+
+ /** NodePoolAutoscaling totalMinNodeCount */
+ totalMinNodeCount?: (number|null);
+
+ /** NodePoolAutoscaling totalMaxNodeCount */
+ totalMaxNodeCount?: (number|null);
+ }
+
+ /** Represents a NodePoolAutoscaling. */
+ class NodePoolAutoscaling implements INodePoolAutoscaling {
+
+ /**
+ * Constructs a new NodePoolAutoscaling.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodePoolAutoscaling);
+
+ /** NodePoolAutoscaling enabled. */
+ public enabled: boolean;
+
+ /** NodePoolAutoscaling minNodeCount. */
+ public minNodeCount: number;
+
+ /** NodePoolAutoscaling maxNodeCount. */
+ public maxNodeCount: number;
+
+ /** NodePoolAutoscaling autoprovisioned. */
+ public autoprovisioned: boolean;
+
+ /** NodePoolAutoscaling locationPolicy. */
+ public locationPolicy: (google.container.v1.NodePoolAutoscaling.LocationPolicy|keyof typeof google.container.v1.NodePoolAutoscaling.LocationPolicy);
+
+ /** NodePoolAutoscaling totalMinNodeCount. */
+ public totalMinNodeCount: number;
+
+ /** NodePoolAutoscaling totalMaxNodeCount. */
+ public totalMaxNodeCount: number;
+
+ /**
+ * Creates a new NodePoolAutoscaling instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodePoolAutoscaling instance
+ */
+ public static create(properties?: google.container.v1.INodePoolAutoscaling): google.container.v1.NodePoolAutoscaling;
+
+ /**
+ * Encodes the specified NodePoolAutoscaling message. Does not implicitly {@link google.container.v1.NodePoolAutoscaling.verify|verify} messages.
+ * @param message NodePoolAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodePoolAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodePoolAutoscaling message, length delimited. Does not implicitly {@link google.container.v1.NodePoolAutoscaling.verify|verify} messages.
+ * @param message NodePoolAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodePoolAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodePoolAutoscaling message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodePoolAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePoolAutoscaling;
+
+ /**
+ * Decodes a NodePoolAutoscaling message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodePoolAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePoolAutoscaling;
+
+ /**
+ * Verifies a NodePoolAutoscaling message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodePoolAutoscaling message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodePoolAutoscaling
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePoolAutoscaling;
+
+ /**
+ * Creates a plain object from a NodePoolAutoscaling message. Also converts values to other types if specified.
+ * @param message NodePoolAutoscaling
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePoolAutoscaling, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodePoolAutoscaling to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodePoolAutoscaling
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NodePoolAutoscaling {
+
+ /** LocationPolicy enum. */
+ enum LocationPolicy {
+ LOCATION_POLICY_UNSPECIFIED = 0,
+ BALANCED = 1,
+ ANY = 2
+ }
+ }
+
+ /** Properties of a SetLabelsRequest. */
+ interface ISetLabelsRequest {
+
+ /** SetLabelsRequest projectId */
+ projectId?: (string|null);
+
+ /** SetLabelsRequest zone */
+ zone?: (string|null);
+
+ /** SetLabelsRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetLabelsRequest resourceLabels */
+ resourceLabels?: ({ [k: string]: string }|null);
+
+ /** SetLabelsRequest labelFingerprint */
+ labelFingerprint?: (string|null);
+
+ /** SetLabelsRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetLabelsRequest. */
+ class SetLabelsRequest implements ISetLabelsRequest {
+
+ /**
+ * Constructs a new SetLabelsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetLabelsRequest);
+
+ /** SetLabelsRequest projectId. */
+ public projectId: string;
+
+ /** SetLabelsRequest zone. */
+ public zone: string;
+
+ /** SetLabelsRequest clusterId. */
+ public clusterId: string;
+
+ /** SetLabelsRequest resourceLabels. */
+ public resourceLabels: { [k: string]: string };
+
+ /** SetLabelsRequest labelFingerprint. */
+ public labelFingerprint: string;
+
+ /** SetLabelsRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetLabelsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetLabelsRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetLabelsRequest): google.container.v1.SetLabelsRequest;
+
+ /**
+ * Encodes the specified SetLabelsRequest message. Does not implicitly {@link google.container.v1.SetLabelsRequest.verify|verify} messages.
+ * @param message SetLabelsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetLabelsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetLabelsRequest message, length delimited. Does not implicitly {@link google.container.v1.SetLabelsRequest.verify|verify} messages.
+ * @param message SetLabelsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetLabelsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetLabelsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetLabelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetLabelsRequest;
+
+ /**
+ * Decodes a SetLabelsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetLabelsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetLabelsRequest;
+
+ /**
+ * Verifies a SetLabelsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetLabelsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetLabelsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetLabelsRequest;
+
+ /**
+ * Creates a plain object from a SetLabelsRequest message. Also converts values to other types if specified.
+ * @param message SetLabelsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetLabelsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetLabelsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetLabelsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetLegacyAbacRequest. */
+ interface ISetLegacyAbacRequest {
+
+ /** SetLegacyAbacRequest projectId */
+ projectId?: (string|null);
+
+ /** SetLegacyAbacRequest zone */
+ zone?: (string|null);
+
+ /** SetLegacyAbacRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetLegacyAbacRequest enabled */
+ enabled?: (boolean|null);
+
+ /** SetLegacyAbacRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetLegacyAbacRequest. */
+ class SetLegacyAbacRequest implements ISetLegacyAbacRequest {
+
+ /**
+ * Constructs a new SetLegacyAbacRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetLegacyAbacRequest);
+
+ /** SetLegacyAbacRequest projectId. */
+ public projectId: string;
+
+ /** SetLegacyAbacRequest zone. */
+ public zone: string;
+
+ /** SetLegacyAbacRequest clusterId. */
+ public clusterId: string;
+
+ /** SetLegacyAbacRequest enabled. */
+ public enabled: boolean;
+
+ /** SetLegacyAbacRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetLegacyAbacRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetLegacyAbacRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetLegacyAbacRequest): google.container.v1.SetLegacyAbacRequest;
+
+ /**
+ * Encodes the specified SetLegacyAbacRequest message. Does not implicitly {@link google.container.v1.SetLegacyAbacRequest.verify|verify} messages.
+ * @param message SetLegacyAbacRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetLegacyAbacRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetLegacyAbacRequest message, length delimited. Does not implicitly {@link google.container.v1.SetLegacyAbacRequest.verify|verify} messages.
+ * @param message SetLegacyAbacRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetLegacyAbacRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetLegacyAbacRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetLegacyAbacRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetLegacyAbacRequest;
+
+ /**
+ * Decodes a SetLegacyAbacRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetLegacyAbacRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetLegacyAbacRequest;
+
+ /**
+ * Verifies a SetLegacyAbacRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetLegacyAbacRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetLegacyAbacRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetLegacyAbacRequest;
+
+ /**
+ * Creates a plain object from a SetLegacyAbacRequest message. Also converts values to other types if specified.
+ * @param message SetLegacyAbacRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetLegacyAbacRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetLegacyAbacRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetLegacyAbacRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a StartIPRotationRequest. */
+ interface IStartIPRotationRequest {
+
+ /** StartIPRotationRequest projectId */
+ projectId?: (string|null);
+
+ /** StartIPRotationRequest zone */
+ zone?: (string|null);
+
+ /** StartIPRotationRequest clusterId */
+ clusterId?: (string|null);
+
+ /** StartIPRotationRequest name */
+ name?: (string|null);
+
+ /** StartIPRotationRequest rotateCredentials */
+ rotateCredentials?: (boolean|null);
+ }
+
+ /** Represents a StartIPRotationRequest. */
+ class StartIPRotationRequest implements IStartIPRotationRequest {
+
+ /**
+ * Constructs a new StartIPRotationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IStartIPRotationRequest);
+
+ /** StartIPRotationRequest projectId. */
+ public projectId: string;
+
+ /** StartIPRotationRequest zone. */
+ public zone: string;
+
+ /** StartIPRotationRequest clusterId. */
+ public clusterId: string;
+
+ /** StartIPRotationRequest name. */
+ public name: string;
+
+ /** StartIPRotationRequest rotateCredentials. */
+ public rotateCredentials: boolean;
+
+ /**
+ * Creates a new StartIPRotationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StartIPRotationRequest instance
+ */
+ public static create(properties?: google.container.v1.IStartIPRotationRequest): google.container.v1.StartIPRotationRequest;
+
+ /**
+ * Encodes the specified StartIPRotationRequest message. Does not implicitly {@link google.container.v1.StartIPRotationRequest.verify|verify} messages.
+ * @param message StartIPRotationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IStartIPRotationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StartIPRotationRequest message, length delimited. Does not implicitly {@link google.container.v1.StartIPRotationRequest.verify|verify} messages.
+ * @param message StartIPRotationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IStartIPRotationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StartIPRotationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StartIPRotationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.StartIPRotationRequest;
+
+ /**
+ * Decodes a StartIPRotationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StartIPRotationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.StartIPRotationRequest;
+
+ /**
+ * Verifies a StartIPRotationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StartIPRotationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StartIPRotationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.StartIPRotationRequest;
+
+ /**
+ * Creates a plain object from a StartIPRotationRequest message. Also converts values to other types if specified.
+ * @param message StartIPRotationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.StartIPRotationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StartIPRotationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StartIPRotationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CompleteIPRotationRequest. */
+ interface ICompleteIPRotationRequest {
+
+ /** CompleteIPRotationRequest projectId */
+ projectId?: (string|null);
+
+ /** CompleteIPRotationRequest zone */
+ zone?: (string|null);
+
+ /** CompleteIPRotationRequest clusterId */
+ clusterId?: (string|null);
+
+ /** CompleteIPRotationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a CompleteIPRotationRequest. */
+ class CompleteIPRotationRequest implements ICompleteIPRotationRequest {
+
+ /**
+ * Constructs a new CompleteIPRotationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICompleteIPRotationRequest);
+
+ /** CompleteIPRotationRequest projectId. */
+ public projectId: string;
+
+ /** CompleteIPRotationRequest zone. */
+ public zone: string;
+
+ /** CompleteIPRotationRequest clusterId. */
+ public clusterId: string;
+
+ /** CompleteIPRotationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new CompleteIPRotationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CompleteIPRotationRequest instance
+ */
+ public static create(properties?: google.container.v1.ICompleteIPRotationRequest): google.container.v1.CompleteIPRotationRequest;
+
+ /**
+ * Encodes the specified CompleteIPRotationRequest message. Does not implicitly {@link google.container.v1.CompleteIPRotationRequest.verify|verify} messages.
+ * @param message CompleteIPRotationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICompleteIPRotationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CompleteIPRotationRequest message, length delimited. Does not implicitly {@link google.container.v1.CompleteIPRotationRequest.verify|verify} messages.
+ * @param message CompleteIPRotationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICompleteIPRotationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CompleteIPRotationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CompleteIPRotationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CompleteIPRotationRequest;
+
+ /**
+ * Decodes a CompleteIPRotationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CompleteIPRotationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CompleteIPRotationRequest;
+
+ /**
+ * Verifies a CompleteIPRotationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CompleteIPRotationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CompleteIPRotationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CompleteIPRotationRequest;
+
+ /**
+ * Creates a plain object from a CompleteIPRotationRequest message. Also converts values to other types if specified.
+ * @param message CompleteIPRotationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CompleteIPRotationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CompleteIPRotationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CompleteIPRotationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AcceleratorConfig. */
+ interface IAcceleratorConfig {
+
+ /** AcceleratorConfig acceleratorCount */
+ acceleratorCount?: (number|Long|string|null);
+
+ /** AcceleratorConfig acceleratorType */
+ acceleratorType?: (string|null);
+
+ /** AcceleratorConfig gpuPartitionSize */
+ gpuPartitionSize?: (string|null);
+
+ /** AcceleratorConfig gpuSharingConfig */
+ gpuSharingConfig?: (google.container.v1.IGPUSharingConfig|null);
+ }
+
+ /** Represents an AcceleratorConfig. */
+ class AcceleratorConfig implements IAcceleratorConfig {
+
+ /**
+ * Constructs a new AcceleratorConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAcceleratorConfig);
+
+ /** AcceleratorConfig acceleratorCount. */
+ public acceleratorCount: (number|Long|string);
+
+ /** AcceleratorConfig acceleratorType. */
+ public acceleratorType: string;
+
+ /** AcceleratorConfig gpuPartitionSize. */
+ public gpuPartitionSize: string;
+
+ /** AcceleratorConfig gpuSharingConfig. */
+ public gpuSharingConfig?: (google.container.v1.IGPUSharingConfig|null);
+
+ /** AcceleratorConfig _gpuSharingConfig. */
+ public _gpuSharingConfig?: "gpuSharingConfig";
+
+ /**
+ * Creates a new AcceleratorConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AcceleratorConfig instance
+ */
+ public static create(properties?: google.container.v1.IAcceleratorConfig): google.container.v1.AcceleratorConfig;
+
+ /**
+ * Encodes the specified AcceleratorConfig message. Does not implicitly {@link google.container.v1.AcceleratorConfig.verify|verify} messages.
+ * @param message AcceleratorConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAcceleratorConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AcceleratorConfig message, length delimited. Does not implicitly {@link google.container.v1.AcceleratorConfig.verify|verify} messages.
+ * @param message AcceleratorConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAcceleratorConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AcceleratorConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AcceleratorConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.AcceleratorConfig;
+
+ /**
+ * Decodes an AcceleratorConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AcceleratorConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.AcceleratorConfig;
+
+ /**
+ * Verifies an AcceleratorConfig message.
+ * @param message Plain 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 AcceleratorConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AcceleratorConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.AcceleratorConfig;
+
+ /**
+ * Creates a plain object from an AcceleratorConfig message. Also converts values to other types if specified.
+ * @param message AcceleratorConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.AcceleratorConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AcceleratorConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AcceleratorConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GPUSharingConfig. */
+ interface IGPUSharingConfig {
+
+ /** GPUSharingConfig maxSharedClientsPerGpu */
+ maxSharedClientsPerGpu?: (number|Long|string|null);
+
+ /** GPUSharingConfig gpuSharingStrategy */
+ gpuSharingStrategy?: (google.container.v1.GPUSharingConfig.GPUSharingStrategy|keyof typeof google.container.v1.GPUSharingConfig.GPUSharingStrategy|null);
+ }
+
+ /** Represents a GPUSharingConfig. */
+ class GPUSharingConfig implements IGPUSharingConfig {
+
+ /**
+ * Constructs a new GPUSharingConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGPUSharingConfig);
+
+ /** GPUSharingConfig maxSharedClientsPerGpu. */
+ public maxSharedClientsPerGpu: (number|Long|string);
+
+ /** GPUSharingConfig gpuSharingStrategy. */
+ public gpuSharingStrategy?: (google.container.v1.GPUSharingConfig.GPUSharingStrategy|keyof typeof google.container.v1.GPUSharingConfig.GPUSharingStrategy|null);
+
+ /** GPUSharingConfig _gpuSharingStrategy. */
+ public _gpuSharingStrategy?: "gpuSharingStrategy";
+
+ /**
+ * Creates a new GPUSharingConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GPUSharingConfig instance
+ */
+ public static create(properties?: google.container.v1.IGPUSharingConfig): google.container.v1.GPUSharingConfig;
+
+ /**
+ * Encodes the specified GPUSharingConfig message. Does not implicitly {@link google.container.v1.GPUSharingConfig.verify|verify} messages.
+ * @param message GPUSharingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGPUSharingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GPUSharingConfig message, length delimited. Does not implicitly {@link google.container.v1.GPUSharingConfig.verify|verify} messages.
+ * @param message GPUSharingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGPUSharingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GPUSharingConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GPUSharingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GPUSharingConfig;
+
+ /**
+ * Decodes a GPUSharingConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GPUSharingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GPUSharingConfig;
+
+ /**
+ * Verifies a GPUSharingConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GPUSharingConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GPUSharingConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GPUSharingConfig;
+
+ /**
+ * Creates a plain object from a GPUSharingConfig message. Also converts values to other types if specified.
+ * @param message GPUSharingConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GPUSharingConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GPUSharingConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GPUSharingConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GPUSharingConfig {
+
+ /** GPUSharingStrategy enum. */
+ enum GPUSharingStrategy {
+ GPU_SHARING_STRATEGY_UNSPECIFIED = 0,
+ TIME_SHARING = 1
+ }
+ }
+
+ /** Properties of a WorkloadMetadataConfig. */
+ interface IWorkloadMetadataConfig {
+
+ /** WorkloadMetadataConfig mode */
+ mode?: (google.container.v1.WorkloadMetadataConfig.Mode|keyof typeof google.container.v1.WorkloadMetadataConfig.Mode|null);
+ }
+
+ /** Represents a WorkloadMetadataConfig. */
+ class WorkloadMetadataConfig implements IWorkloadMetadataConfig {
+
+ /**
+ * Constructs a new WorkloadMetadataConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IWorkloadMetadataConfig);
+
+ /** WorkloadMetadataConfig mode. */
+ public mode: (google.container.v1.WorkloadMetadataConfig.Mode|keyof typeof google.container.v1.WorkloadMetadataConfig.Mode);
+
+ /**
+ * Creates a new WorkloadMetadataConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WorkloadMetadataConfig instance
+ */
+ public static create(properties?: google.container.v1.IWorkloadMetadataConfig): google.container.v1.WorkloadMetadataConfig;
+
+ /**
+ * Encodes the specified WorkloadMetadataConfig message. Does not implicitly {@link google.container.v1.WorkloadMetadataConfig.verify|verify} messages.
+ * @param message WorkloadMetadataConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IWorkloadMetadataConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WorkloadMetadataConfig message, length delimited. Does not implicitly {@link google.container.v1.WorkloadMetadataConfig.verify|verify} messages.
+ * @param message WorkloadMetadataConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IWorkloadMetadataConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WorkloadMetadataConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WorkloadMetadataConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.WorkloadMetadataConfig;
+
+ /**
+ * Decodes a WorkloadMetadataConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WorkloadMetadataConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.WorkloadMetadataConfig;
+
+ /**
+ * Verifies a WorkloadMetadataConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WorkloadMetadataConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WorkloadMetadataConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.WorkloadMetadataConfig;
+
+ /**
+ * Creates a plain object from a WorkloadMetadataConfig message. Also converts values to other types if specified.
+ * @param message WorkloadMetadataConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.WorkloadMetadataConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WorkloadMetadataConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WorkloadMetadataConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace WorkloadMetadataConfig {
+
+ /** Mode enum. */
+ enum Mode {
+ MODE_UNSPECIFIED = 0,
+ GCE_METADATA = 1,
+ GKE_METADATA = 2
+ }
+ }
+
+ /** Properties of a SetNetworkPolicyRequest. */
+ interface ISetNetworkPolicyRequest {
+
+ /** SetNetworkPolicyRequest projectId */
+ projectId?: (string|null);
+
+ /** SetNetworkPolicyRequest zone */
+ zone?: (string|null);
+
+ /** SetNetworkPolicyRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetNetworkPolicyRequest networkPolicy */
+ networkPolicy?: (google.container.v1.INetworkPolicy|null);
+
+ /** SetNetworkPolicyRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetNetworkPolicyRequest. */
+ class SetNetworkPolicyRequest implements ISetNetworkPolicyRequest {
+
+ /**
+ * Constructs a new SetNetworkPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetNetworkPolicyRequest);
+
+ /** SetNetworkPolicyRequest projectId. */
+ public projectId: string;
+
+ /** SetNetworkPolicyRequest zone. */
+ public zone: string;
+
+ /** SetNetworkPolicyRequest clusterId. */
+ public clusterId: string;
+
+ /** SetNetworkPolicyRequest networkPolicy. */
+ public networkPolicy?: (google.container.v1.INetworkPolicy|null);
+
+ /** SetNetworkPolicyRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetNetworkPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetNetworkPolicyRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetNetworkPolicyRequest): google.container.v1.SetNetworkPolicyRequest;
+
+ /**
+ * Encodes the specified SetNetworkPolicyRequest message. Does not implicitly {@link google.container.v1.SetNetworkPolicyRequest.verify|verify} messages.
+ * @param message SetNetworkPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetNetworkPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetNetworkPolicyRequest message, length delimited. Does not implicitly {@link google.container.v1.SetNetworkPolicyRequest.verify|verify} messages.
+ * @param message SetNetworkPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetNetworkPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetNetworkPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetNetworkPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetNetworkPolicyRequest;
+
+ /**
+ * Decodes a SetNetworkPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetNetworkPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetNetworkPolicyRequest;
+
+ /**
+ * Verifies a SetNetworkPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetNetworkPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetNetworkPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetNetworkPolicyRequest;
+
+ /**
+ * Creates a plain object from a SetNetworkPolicyRequest message. Also converts values to other types if specified.
+ * @param message SetNetworkPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetNetworkPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetNetworkPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetNetworkPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetMaintenancePolicyRequest. */
+ interface ISetMaintenancePolicyRequest {
+
+ /** SetMaintenancePolicyRequest projectId */
+ projectId?: (string|null);
+
+ /** SetMaintenancePolicyRequest zone */
+ zone?: (string|null);
+
+ /** SetMaintenancePolicyRequest clusterId */
+ clusterId?: (string|null);
+
+ /** SetMaintenancePolicyRequest maintenancePolicy */
+ maintenancePolicy?: (google.container.v1.IMaintenancePolicy|null);
+
+ /** SetMaintenancePolicyRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a SetMaintenancePolicyRequest. */
+ class SetMaintenancePolicyRequest implements ISetMaintenancePolicyRequest {
+
+ /**
+ * Constructs a new SetMaintenancePolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISetMaintenancePolicyRequest);
+
+ /** SetMaintenancePolicyRequest projectId. */
+ public projectId: string;
+
+ /** SetMaintenancePolicyRequest zone. */
+ public zone: string;
+
+ /** SetMaintenancePolicyRequest clusterId. */
+ public clusterId: string;
+
+ /** SetMaintenancePolicyRequest maintenancePolicy. */
+ public maintenancePolicy?: (google.container.v1.IMaintenancePolicy|null);
+
+ /** SetMaintenancePolicyRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new SetMaintenancePolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetMaintenancePolicyRequest instance
+ */
+ public static create(properties?: google.container.v1.ISetMaintenancePolicyRequest): google.container.v1.SetMaintenancePolicyRequest;
+
+ /**
+ * Encodes the specified SetMaintenancePolicyRequest message. Does not implicitly {@link google.container.v1.SetMaintenancePolicyRequest.verify|verify} messages.
+ * @param message SetMaintenancePolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISetMaintenancePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetMaintenancePolicyRequest message, length delimited. Does not implicitly {@link google.container.v1.SetMaintenancePolicyRequest.verify|verify} messages.
+ * @param message SetMaintenancePolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISetMaintenancePolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetMaintenancePolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetMaintenancePolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SetMaintenancePolicyRequest;
+
+ /**
+ * Decodes a SetMaintenancePolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetMaintenancePolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SetMaintenancePolicyRequest;
+
+ /**
+ * Verifies a SetMaintenancePolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetMaintenancePolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetMaintenancePolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SetMaintenancePolicyRequest;
+
+ /**
+ * Creates a plain object from a SetMaintenancePolicyRequest message. Also converts values to other types if specified.
+ * @param message SetMaintenancePolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SetMaintenancePolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetMaintenancePolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetMaintenancePolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a StatusCondition. */
+ interface IStatusCondition {
+
+ /** StatusCondition code */
+ code?: (google.container.v1.StatusCondition.Code|keyof typeof google.container.v1.StatusCondition.Code|null);
+
+ /** StatusCondition message */
+ message?: (string|null);
+
+ /** StatusCondition canonicalCode */
+ canonicalCode?: (google.rpc.Code|keyof typeof google.rpc.Code|null);
+ }
+
+ /** Represents a StatusCondition. */
+ class StatusCondition implements IStatusCondition {
+
+ /**
+ * Constructs a new StatusCondition.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IStatusCondition);
+
+ /** StatusCondition code. */
+ public code: (google.container.v1.StatusCondition.Code|keyof typeof google.container.v1.StatusCondition.Code);
+
+ /** StatusCondition message. */
+ public message: string;
+
+ /** StatusCondition canonicalCode. */
+ public canonicalCode: (google.rpc.Code|keyof typeof google.rpc.Code);
+
+ /**
+ * Creates a new StatusCondition instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StatusCondition instance
+ */
+ public static create(properties?: google.container.v1.IStatusCondition): google.container.v1.StatusCondition;
+
+ /**
+ * Encodes the specified StatusCondition message. Does not implicitly {@link google.container.v1.StatusCondition.verify|verify} messages.
+ * @param message StatusCondition message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IStatusCondition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StatusCondition message, length delimited. Does not implicitly {@link google.container.v1.StatusCondition.verify|verify} messages.
+ * @param message StatusCondition message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IStatusCondition, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StatusCondition message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StatusCondition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.StatusCondition;
+
+ /**
+ * Decodes a StatusCondition message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StatusCondition
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.StatusCondition;
+
+ /**
+ * Verifies a StatusCondition message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StatusCondition message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StatusCondition
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.StatusCondition;
+
+ /**
+ * Creates a plain object from a StatusCondition message. Also converts values to other types if specified.
+ * @param message StatusCondition
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.StatusCondition, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StatusCondition to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StatusCondition
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace StatusCondition {
+
+ /** Code enum. */
+ enum Code {
+ UNKNOWN = 0,
+ GCE_STOCKOUT = 1,
+ GKE_SERVICE_ACCOUNT_DELETED = 2,
+ GCE_QUOTA_EXCEEDED = 3,
+ SET_BY_OPERATOR = 4,
+ CLOUD_KMS_KEY_ERROR = 7,
+ CA_EXPIRING = 9
+ }
+ }
+
+ /** Properties of a NetworkConfig. */
+ interface INetworkConfig {
+
+ /** NetworkConfig network */
+ network?: (string|null);
+
+ /** NetworkConfig subnetwork */
+ subnetwork?: (string|null);
+
+ /** NetworkConfig enableIntraNodeVisibility */
+ enableIntraNodeVisibility?: (boolean|null);
+
+ /** NetworkConfig defaultSnatStatus */
+ defaultSnatStatus?: (google.container.v1.IDefaultSnatStatus|null);
+
+ /** NetworkConfig enableL4ilbSubsetting */
+ enableL4ilbSubsetting?: (boolean|null);
+
+ /** NetworkConfig datapathProvider */
+ datapathProvider?: (google.container.v1.DatapathProvider|keyof typeof google.container.v1.DatapathProvider|null);
+
+ /** NetworkConfig privateIpv6GoogleAccess */
+ privateIpv6GoogleAccess?: (google.container.v1.PrivateIPv6GoogleAccess|keyof typeof google.container.v1.PrivateIPv6GoogleAccess|null);
+
+ /** NetworkConfig dnsConfig */
+ dnsConfig?: (google.container.v1.IDNSConfig|null);
+
+ /** NetworkConfig serviceExternalIpsConfig */
+ serviceExternalIpsConfig?: (google.container.v1.IServiceExternalIPsConfig|null);
+
+ /** NetworkConfig gatewayApiConfig */
+ gatewayApiConfig?: (google.container.v1.IGatewayAPIConfig|null);
+ }
+
+ /** Represents a NetworkConfig. */
+ class NetworkConfig implements INetworkConfig {
+
+ /**
+ * Constructs a new NetworkConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INetworkConfig);
+
+ /** NetworkConfig network. */
+ public network: string;
+
+ /** NetworkConfig subnetwork. */
+ public subnetwork: string;
+
+ /** NetworkConfig enableIntraNodeVisibility. */
+ public enableIntraNodeVisibility: boolean;
+
+ /** NetworkConfig defaultSnatStatus. */
+ public defaultSnatStatus?: (google.container.v1.IDefaultSnatStatus|null);
+
+ /** NetworkConfig enableL4ilbSubsetting. */
+ public enableL4ilbSubsetting: boolean;
+
+ /** NetworkConfig datapathProvider. */
+ public datapathProvider: (google.container.v1.DatapathProvider|keyof typeof google.container.v1.DatapathProvider);
+
+ /** NetworkConfig privateIpv6GoogleAccess. */
+ public privateIpv6GoogleAccess: (google.container.v1.PrivateIPv6GoogleAccess|keyof typeof google.container.v1.PrivateIPv6GoogleAccess);
+
+ /** NetworkConfig dnsConfig. */
+ public dnsConfig?: (google.container.v1.IDNSConfig|null);
+
+ /** NetworkConfig serviceExternalIpsConfig. */
+ public serviceExternalIpsConfig?: (google.container.v1.IServiceExternalIPsConfig|null);
+
+ /** NetworkConfig gatewayApiConfig. */
+ public gatewayApiConfig?: (google.container.v1.IGatewayAPIConfig|null);
+
+ /**
+ * Creates a new NetworkConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NetworkConfig instance
+ */
+ public static create(properties?: google.container.v1.INetworkConfig): google.container.v1.NetworkConfig;
+
+ /**
+ * Encodes the specified NetworkConfig message. Does not implicitly {@link google.container.v1.NetworkConfig.verify|verify} messages.
+ * @param message NetworkConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INetworkConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NetworkConfig message, length delimited. Does not implicitly {@link google.container.v1.NetworkConfig.verify|verify} messages.
+ * @param message NetworkConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INetworkConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NetworkConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NetworkConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NetworkConfig;
+
+ /**
+ * Decodes a NetworkConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NetworkConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NetworkConfig;
+
+ /**
+ * Verifies a NetworkConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NetworkConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NetworkConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NetworkConfig;
+
+ /**
+ * Creates a plain object from a NetworkConfig message. Also converts values to other types if specified.
+ * @param message NetworkConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NetworkConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NetworkConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NetworkConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GatewayAPIConfig. */
+ interface IGatewayAPIConfig {
+
+ /** GatewayAPIConfig channel */
+ channel?: (google.container.v1.GatewayAPIConfig.Channel|keyof typeof google.container.v1.GatewayAPIConfig.Channel|null);
+ }
+
+ /** Represents a GatewayAPIConfig. */
+ class GatewayAPIConfig implements IGatewayAPIConfig {
+
+ /**
+ * Constructs a new GatewayAPIConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGatewayAPIConfig);
+
+ /** GatewayAPIConfig channel. */
+ public channel: (google.container.v1.GatewayAPIConfig.Channel|keyof typeof google.container.v1.GatewayAPIConfig.Channel);
+
+ /**
+ * Creates a new GatewayAPIConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GatewayAPIConfig instance
+ */
+ public static create(properties?: google.container.v1.IGatewayAPIConfig): google.container.v1.GatewayAPIConfig;
+
+ /**
+ * Encodes the specified GatewayAPIConfig message. Does not implicitly {@link google.container.v1.GatewayAPIConfig.verify|verify} messages.
+ * @param message GatewayAPIConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGatewayAPIConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GatewayAPIConfig message, length delimited. Does not implicitly {@link google.container.v1.GatewayAPIConfig.verify|verify} messages.
+ * @param message GatewayAPIConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGatewayAPIConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GatewayAPIConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GatewayAPIConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GatewayAPIConfig;
+
+ /**
+ * Decodes a GatewayAPIConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GatewayAPIConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GatewayAPIConfig;
+
+ /**
+ * Verifies a GatewayAPIConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GatewayAPIConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GatewayAPIConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GatewayAPIConfig;
+
+ /**
+ * Creates a plain object from a GatewayAPIConfig message. Also converts values to other types if specified.
+ * @param message GatewayAPIConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GatewayAPIConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GatewayAPIConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GatewayAPIConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GatewayAPIConfig {
+
+ /** Channel enum. */
+ enum Channel {
+ CHANNEL_UNSPECIFIED = 0,
+ CHANNEL_DISABLED = 1,
+ CHANNEL_EXPERIMENTAL = 3,
+ CHANNEL_STANDARD = 4
+ }
+ }
+
+ /** Properties of a ServiceExternalIPsConfig. */
+ interface IServiceExternalIPsConfig {
+
+ /** ServiceExternalIPsConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ServiceExternalIPsConfig. */
+ class ServiceExternalIPsConfig implements IServiceExternalIPsConfig {
+
+ /**
+ * Constructs a new ServiceExternalIPsConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IServiceExternalIPsConfig);
+
+ /** ServiceExternalIPsConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ServiceExternalIPsConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceExternalIPsConfig instance
+ */
+ public static create(properties?: google.container.v1.IServiceExternalIPsConfig): google.container.v1.ServiceExternalIPsConfig;
+
+ /**
+ * Encodes the specified ServiceExternalIPsConfig message. Does not implicitly {@link google.container.v1.ServiceExternalIPsConfig.verify|verify} messages.
+ * @param message ServiceExternalIPsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IServiceExternalIPsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceExternalIPsConfig message, length delimited. Does not implicitly {@link google.container.v1.ServiceExternalIPsConfig.verify|verify} messages.
+ * @param message ServiceExternalIPsConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IServiceExternalIPsConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceExternalIPsConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceExternalIPsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ServiceExternalIPsConfig;
+
+ /**
+ * Decodes a ServiceExternalIPsConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceExternalIPsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ServiceExternalIPsConfig;
+
+ /**
+ * Verifies a ServiceExternalIPsConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceExternalIPsConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceExternalIPsConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ServiceExternalIPsConfig;
+
+ /**
+ * Creates a plain object from a ServiceExternalIPsConfig message. Also converts values to other types if specified.
+ * @param message ServiceExternalIPsConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ServiceExternalIPsConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceExternalIPsConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceExternalIPsConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOpenIDConfigRequest. */
+ interface IGetOpenIDConfigRequest {
+
+ /** GetOpenIDConfigRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a GetOpenIDConfigRequest. */
+ class GetOpenIDConfigRequest implements IGetOpenIDConfigRequest {
+
+ /**
+ * Constructs a new GetOpenIDConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetOpenIDConfigRequest);
+
+ /** GetOpenIDConfigRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new GetOpenIDConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOpenIDConfigRequest instance
+ */
+ public static create(properties?: google.container.v1.IGetOpenIDConfigRequest): google.container.v1.GetOpenIDConfigRequest;
+
+ /**
+ * Encodes the specified GetOpenIDConfigRequest message. Does not implicitly {@link google.container.v1.GetOpenIDConfigRequest.verify|verify} messages.
+ * @param message GetOpenIDConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetOpenIDConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOpenIDConfigRequest message, length delimited. Does not implicitly {@link google.container.v1.GetOpenIDConfigRequest.verify|verify} messages.
+ * @param message GetOpenIDConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetOpenIDConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOpenIDConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOpenIDConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetOpenIDConfigRequest;
+
+ /**
+ * Decodes a GetOpenIDConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOpenIDConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetOpenIDConfigRequest;
+
+ /**
+ * Verifies a GetOpenIDConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOpenIDConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOpenIDConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetOpenIDConfigRequest;
+
+ /**
+ * Creates a plain object from a GetOpenIDConfigRequest message. Also converts values to other types if specified.
+ * @param message GetOpenIDConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetOpenIDConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOpenIDConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOpenIDConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOpenIDConfigResponse. */
+ interface IGetOpenIDConfigResponse {
+
+ /** GetOpenIDConfigResponse issuer */
+ issuer?: (string|null);
+
+ /** GetOpenIDConfigResponse jwksUri */
+ jwksUri?: (string|null);
+
+ /** GetOpenIDConfigResponse responseTypesSupported */
+ responseTypesSupported?: (string[]|null);
+
+ /** GetOpenIDConfigResponse subjectTypesSupported */
+ subjectTypesSupported?: (string[]|null);
+
+ /** GetOpenIDConfigResponse idTokenSigningAlgValuesSupported */
+ idTokenSigningAlgValuesSupported?: (string[]|null);
+
+ /** GetOpenIDConfigResponse claimsSupported */
+ claimsSupported?: (string[]|null);
+
+ /** GetOpenIDConfigResponse grantTypes */
+ grantTypes?: (string[]|null);
+ }
+
+ /** Represents a GetOpenIDConfigResponse. */
+ class GetOpenIDConfigResponse implements IGetOpenIDConfigResponse {
+
+ /**
+ * Constructs a new GetOpenIDConfigResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetOpenIDConfigResponse);
+
+ /** GetOpenIDConfigResponse issuer. */
+ public issuer: string;
+
+ /** GetOpenIDConfigResponse jwksUri. */
+ public jwksUri: string;
+
+ /** GetOpenIDConfigResponse responseTypesSupported. */
+ public responseTypesSupported: string[];
+
+ /** GetOpenIDConfigResponse subjectTypesSupported. */
+ public subjectTypesSupported: string[];
+
+ /** GetOpenIDConfigResponse idTokenSigningAlgValuesSupported. */
+ public idTokenSigningAlgValuesSupported: string[];
+
+ /** GetOpenIDConfigResponse claimsSupported. */
+ public claimsSupported: string[];
+
+ /** GetOpenIDConfigResponse grantTypes. */
+ public grantTypes: string[];
+
+ /**
+ * Creates a new GetOpenIDConfigResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOpenIDConfigResponse instance
+ */
+ public static create(properties?: google.container.v1.IGetOpenIDConfigResponse): google.container.v1.GetOpenIDConfigResponse;
+
+ /**
+ * Encodes the specified GetOpenIDConfigResponse message. Does not implicitly {@link google.container.v1.GetOpenIDConfigResponse.verify|verify} messages.
+ * @param message GetOpenIDConfigResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetOpenIDConfigResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOpenIDConfigResponse message, length delimited. Does not implicitly {@link google.container.v1.GetOpenIDConfigResponse.verify|verify} messages.
+ * @param message GetOpenIDConfigResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetOpenIDConfigResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOpenIDConfigResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOpenIDConfigResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetOpenIDConfigResponse;
+
+ /**
+ * Decodes a GetOpenIDConfigResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOpenIDConfigResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetOpenIDConfigResponse;
+
+ /**
+ * Verifies a GetOpenIDConfigResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOpenIDConfigResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOpenIDConfigResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetOpenIDConfigResponse;
+
+ /**
+ * Creates a plain object from a GetOpenIDConfigResponse message. Also converts values to other types if specified.
+ * @param message GetOpenIDConfigResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetOpenIDConfigResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOpenIDConfigResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOpenIDConfigResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetJSONWebKeysRequest. */
+ interface IGetJSONWebKeysRequest {
+
+ /** GetJSONWebKeysRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a GetJSONWebKeysRequest. */
+ class GetJSONWebKeysRequest implements IGetJSONWebKeysRequest {
+
+ /**
+ * Constructs a new GetJSONWebKeysRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetJSONWebKeysRequest);
+
+ /** GetJSONWebKeysRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new GetJSONWebKeysRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetJSONWebKeysRequest instance
+ */
+ public static create(properties?: google.container.v1.IGetJSONWebKeysRequest): google.container.v1.GetJSONWebKeysRequest;
+
+ /**
+ * Encodes the specified GetJSONWebKeysRequest message. Does not implicitly {@link google.container.v1.GetJSONWebKeysRequest.verify|verify} messages.
+ * @param message GetJSONWebKeysRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetJSONWebKeysRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetJSONWebKeysRequest message, length delimited. Does not implicitly {@link google.container.v1.GetJSONWebKeysRequest.verify|verify} messages.
+ * @param message GetJSONWebKeysRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetJSONWebKeysRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetJSONWebKeysRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetJSONWebKeysRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetJSONWebKeysRequest;
+
+ /**
+ * Decodes a GetJSONWebKeysRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetJSONWebKeysRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetJSONWebKeysRequest;
+
+ /**
+ * Verifies a GetJSONWebKeysRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetJSONWebKeysRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetJSONWebKeysRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetJSONWebKeysRequest;
+
+ /**
+ * Creates a plain object from a GetJSONWebKeysRequest message. Also converts values to other types if specified.
+ * @param message GetJSONWebKeysRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetJSONWebKeysRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetJSONWebKeysRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetJSONWebKeysRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Jwk. */
+ interface IJwk {
+
+ /** Jwk kty */
+ kty?: (string|null);
+
+ /** Jwk alg */
+ alg?: (string|null);
+
+ /** Jwk use */
+ use?: (string|null);
+
+ /** Jwk kid */
+ kid?: (string|null);
+
+ /** Jwk n */
+ n?: (string|null);
+
+ /** Jwk e */
+ e?: (string|null);
+
+ /** Jwk x */
+ x?: (string|null);
+
+ /** Jwk y */
+ y?: (string|null);
+
+ /** Jwk crv */
+ crv?: (string|null);
+ }
+
+ /** Represents a Jwk. */
+ class Jwk implements IJwk {
+
+ /**
+ * Constructs a new Jwk.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IJwk);
+
+ /** Jwk kty. */
+ public kty: string;
+
+ /** Jwk alg. */
+ public alg: string;
+
+ /** Jwk use. */
+ public use: string;
+
+ /** Jwk kid. */
+ public kid: string;
+
+ /** Jwk n. */
+ public n: string;
+
+ /** Jwk e. */
+ public e: string;
+
+ /** Jwk x. */
+ public x: string;
+
+ /** Jwk y. */
+ public y: string;
+
+ /** Jwk crv. */
+ public crv: string;
+
+ /**
+ * Creates a new Jwk instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Jwk instance
+ */
+ public static create(properties?: google.container.v1.IJwk): google.container.v1.Jwk;
+
+ /**
+ * Encodes the specified Jwk message. Does not implicitly {@link google.container.v1.Jwk.verify|verify} messages.
+ * @param message Jwk message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IJwk, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Jwk message, length delimited. Does not implicitly {@link google.container.v1.Jwk.verify|verify} messages.
+ * @param message Jwk message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IJwk, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Jwk message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Jwk
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.Jwk;
+
+ /**
+ * Decodes a Jwk message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Jwk
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.Jwk;
+
+ /**
+ * Verifies a Jwk message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Jwk message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Jwk
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.Jwk;
+
+ /**
+ * Creates a plain object from a Jwk message. Also converts values to other types if specified.
+ * @param message Jwk
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.Jwk, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Jwk to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Jwk
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetJSONWebKeysResponse. */
+ interface IGetJSONWebKeysResponse {
+
+ /** GetJSONWebKeysResponse keys */
+ keys?: (google.container.v1.IJwk[]|null);
+ }
+
+ /** Represents a GetJSONWebKeysResponse. */
+ class GetJSONWebKeysResponse implements IGetJSONWebKeysResponse {
+
+ /**
+ * Constructs a new GetJSONWebKeysResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IGetJSONWebKeysResponse);
+
+ /** GetJSONWebKeysResponse keys. */
+ public keys: google.container.v1.IJwk[];
+
+ /**
+ * Creates a new GetJSONWebKeysResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetJSONWebKeysResponse instance
+ */
+ public static create(properties?: google.container.v1.IGetJSONWebKeysResponse): google.container.v1.GetJSONWebKeysResponse;
+
+ /**
+ * Encodes the specified GetJSONWebKeysResponse message. Does not implicitly {@link google.container.v1.GetJSONWebKeysResponse.verify|verify} messages.
+ * @param message GetJSONWebKeysResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IGetJSONWebKeysResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetJSONWebKeysResponse message, length delimited. Does not implicitly {@link google.container.v1.GetJSONWebKeysResponse.verify|verify} messages.
+ * @param message GetJSONWebKeysResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IGetJSONWebKeysResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetJSONWebKeysResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetJSONWebKeysResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.GetJSONWebKeysResponse;
+
+ /**
+ * Decodes a GetJSONWebKeysResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetJSONWebKeysResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.GetJSONWebKeysResponse;
+
+ /**
+ * Verifies a GetJSONWebKeysResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetJSONWebKeysResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetJSONWebKeysResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.GetJSONWebKeysResponse;
+
+ /**
+ * Creates a plain object from a GetJSONWebKeysResponse message. Also converts values to other types if specified.
+ * @param message GetJSONWebKeysResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.GetJSONWebKeysResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetJSONWebKeysResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetJSONWebKeysResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReleaseChannel. */
+ interface IReleaseChannel {
+
+ /** ReleaseChannel channel */
+ channel?: (google.container.v1.ReleaseChannel.Channel|keyof typeof google.container.v1.ReleaseChannel.Channel|null);
+ }
+
+ /** Represents a ReleaseChannel. */
+ class ReleaseChannel implements IReleaseChannel {
+
+ /**
+ * Constructs a new ReleaseChannel.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IReleaseChannel);
+
+ /** ReleaseChannel channel. */
+ public channel: (google.container.v1.ReleaseChannel.Channel|keyof typeof google.container.v1.ReleaseChannel.Channel);
+
+ /**
+ * Creates a new ReleaseChannel instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReleaseChannel instance
+ */
+ public static create(properties?: google.container.v1.IReleaseChannel): google.container.v1.ReleaseChannel;
+
+ /**
+ * Encodes the specified ReleaseChannel message. Does not implicitly {@link google.container.v1.ReleaseChannel.verify|verify} messages.
+ * @param message ReleaseChannel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IReleaseChannel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReleaseChannel message, length delimited. Does not implicitly {@link google.container.v1.ReleaseChannel.verify|verify} messages.
+ * @param message ReleaseChannel message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IReleaseChannel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReleaseChannel message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReleaseChannel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ReleaseChannel;
+
+ /**
+ * Decodes a ReleaseChannel message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReleaseChannel
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ReleaseChannel;
+
+ /**
+ * Verifies a ReleaseChannel message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReleaseChannel message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReleaseChannel
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ReleaseChannel;
+
+ /**
+ * Creates a plain object from a ReleaseChannel message. Also converts values to other types if specified.
+ * @param message ReleaseChannel
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ReleaseChannel, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReleaseChannel to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReleaseChannel
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ReleaseChannel {
+
+ /** Channel enum. */
+ enum Channel {
+ UNSPECIFIED = 0,
+ RAPID = 1,
+ REGULAR = 2,
+ STABLE = 3
+ }
+ }
+
+ /** Properties of a CostManagementConfig. */
+ interface ICostManagementConfig {
+
+ /** CostManagementConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a CostManagementConfig. */
+ class CostManagementConfig implements ICostManagementConfig {
+
+ /**
+ * Constructs a new CostManagementConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ICostManagementConfig);
+
+ /** CostManagementConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new CostManagementConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CostManagementConfig instance
+ */
+ public static create(properties?: google.container.v1.ICostManagementConfig): google.container.v1.CostManagementConfig;
+
+ /**
+ * Encodes the specified CostManagementConfig message. Does not implicitly {@link google.container.v1.CostManagementConfig.verify|verify} messages.
+ * @param message CostManagementConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ICostManagementConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CostManagementConfig message, length delimited. Does not implicitly {@link google.container.v1.CostManagementConfig.verify|verify} messages.
+ * @param message CostManagementConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ICostManagementConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CostManagementConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CostManagementConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.CostManagementConfig;
+
+ /**
+ * Decodes a CostManagementConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CostManagementConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.CostManagementConfig;
+
+ /**
+ * Verifies a CostManagementConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CostManagementConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CostManagementConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.CostManagementConfig;
+
+ /**
+ * Creates a plain object from a CostManagementConfig message. Also converts values to other types if specified.
+ * @param message CostManagementConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.CostManagementConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CostManagementConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CostManagementConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IntraNodeVisibilityConfig. */
+ interface IIntraNodeVisibilityConfig {
+
+ /** IntraNodeVisibilityConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents an IntraNodeVisibilityConfig. */
+ class IntraNodeVisibilityConfig implements IIntraNodeVisibilityConfig {
+
+ /**
+ * Constructs a new IntraNodeVisibilityConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IIntraNodeVisibilityConfig);
+
+ /** IntraNodeVisibilityConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new IntraNodeVisibilityConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IntraNodeVisibilityConfig instance
+ */
+ public static create(properties?: google.container.v1.IIntraNodeVisibilityConfig): google.container.v1.IntraNodeVisibilityConfig;
+
+ /**
+ * Encodes the specified IntraNodeVisibilityConfig message. Does not implicitly {@link google.container.v1.IntraNodeVisibilityConfig.verify|verify} messages.
+ * @param message IntraNodeVisibilityConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IIntraNodeVisibilityConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IntraNodeVisibilityConfig message, length delimited. Does not implicitly {@link google.container.v1.IntraNodeVisibilityConfig.verify|verify} messages.
+ * @param message IntraNodeVisibilityConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IIntraNodeVisibilityConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IntraNodeVisibilityConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IntraNodeVisibilityConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.IntraNodeVisibilityConfig;
+
+ /**
+ * Decodes an IntraNodeVisibilityConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IntraNodeVisibilityConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.IntraNodeVisibilityConfig;
+
+ /**
+ * Verifies an IntraNodeVisibilityConfig message.
+ * @param message Plain 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 IntraNodeVisibilityConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IntraNodeVisibilityConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.IntraNodeVisibilityConfig;
+
+ /**
+ * Creates a plain object from an IntraNodeVisibilityConfig message. Also converts values to other types if specified.
+ * @param message IntraNodeVisibilityConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.IntraNodeVisibilityConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IntraNodeVisibilityConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IntraNodeVisibilityConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ILBSubsettingConfig. */
+ interface IILBSubsettingConfig {
+
+ /** ILBSubsettingConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ILBSubsettingConfig. */
+ class ILBSubsettingConfig implements IILBSubsettingConfig {
+
+ /**
+ * Constructs a new ILBSubsettingConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IILBSubsettingConfig);
+
+ /** ILBSubsettingConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ILBSubsettingConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ILBSubsettingConfig instance
+ */
+ public static create(properties?: google.container.v1.IILBSubsettingConfig): google.container.v1.ILBSubsettingConfig;
+
+ /**
+ * Encodes the specified ILBSubsettingConfig message. Does not implicitly {@link google.container.v1.ILBSubsettingConfig.verify|verify} messages.
+ * @param message ILBSubsettingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IILBSubsettingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ILBSubsettingConfig message, length delimited. Does not implicitly {@link google.container.v1.ILBSubsettingConfig.verify|verify} messages.
+ * @param message ILBSubsettingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IILBSubsettingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ILBSubsettingConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ILBSubsettingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ILBSubsettingConfig;
+
+ /**
+ * Decodes a ILBSubsettingConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ILBSubsettingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ILBSubsettingConfig;
+
+ /**
+ * Verifies a ILBSubsettingConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ILBSubsettingConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ILBSubsettingConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ILBSubsettingConfig;
+
+ /**
+ * Creates a plain object from a ILBSubsettingConfig message. Also converts values to other types if specified.
+ * @param message ILBSubsettingConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ILBSubsettingConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ILBSubsettingConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ILBSubsettingConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DNSConfig. */
+ interface IDNSConfig {
+
+ /** DNSConfig clusterDns */
+ clusterDns?: (google.container.v1.DNSConfig.Provider|keyof typeof google.container.v1.DNSConfig.Provider|null);
+
+ /** DNSConfig clusterDnsScope */
+ clusterDnsScope?: (google.container.v1.DNSConfig.DNSScope|keyof typeof google.container.v1.DNSConfig.DNSScope|null);
+
+ /** DNSConfig clusterDnsDomain */
+ clusterDnsDomain?: (string|null);
+ }
+
+ /** Represents a DNSConfig. */
+ class DNSConfig implements IDNSConfig {
+
+ /**
+ * Constructs a new DNSConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDNSConfig);
+
+ /** DNSConfig clusterDns. */
+ public clusterDns: (google.container.v1.DNSConfig.Provider|keyof typeof google.container.v1.DNSConfig.Provider);
+
+ /** DNSConfig clusterDnsScope. */
+ public clusterDnsScope: (google.container.v1.DNSConfig.DNSScope|keyof typeof google.container.v1.DNSConfig.DNSScope);
+
+ /** DNSConfig clusterDnsDomain. */
+ public clusterDnsDomain: string;
+
+ /**
+ * Creates a new DNSConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DNSConfig instance
+ */
+ public static create(properties?: google.container.v1.IDNSConfig): google.container.v1.DNSConfig;
+
+ /**
+ * Encodes the specified DNSConfig message. Does not implicitly {@link google.container.v1.DNSConfig.verify|verify} messages.
+ * @param message DNSConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDNSConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DNSConfig message, length delimited. Does not implicitly {@link google.container.v1.DNSConfig.verify|verify} messages.
+ * @param message DNSConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDNSConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DNSConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DNSConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DNSConfig;
+
+ /**
+ * Decodes a DNSConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DNSConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DNSConfig;
+
+ /**
+ * Verifies a DNSConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DNSConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DNSConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DNSConfig;
+
+ /**
+ * Creates a plain object from a DNSConfig message. Also converts values to other types if specified.
+ * @param message DNSConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DNSConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DNSConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DNSConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DNSConfig {
+
+ /** Provider enum. */
+ enum Provider {
+ PROVIDER_UNSPECIFIED = 0,
+ PLATFORM_DEFAULT = 1,
+ CLOUD_DNS = 2
+ }
+
+ /** DNSScope enum. */
+ enum DNSScope {
+ DNS_SCOPE_UNSPECIFIED = 0,
+ VPC_SCOPE = 2
+ }
+ }
+
+ /** Properties of a MaxPodsConstraint. */
+ interface IMaxPodsConstraint {
+
+ /** MaxPodsConstraint maxPodsPerNode */
+ maxPodsPerNode?: (number|Long|string|null);
+ }
+
+ /** Represents a MaxPodsConstraint. */
+ class MaxPodsConstraint implements IMaxPodsConstraint {
+
+ /**
+ * Constructs a new MaxPodsConstraint.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMaxPodsConstraint);
+
+ /** MaxPodsConstraint maxPodsPerNode. */
+ public maxPodsPerNode: (number|Long|string);
+
+ /**
+ * Creates a new MaxPodsConstraint instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MaxPodsConstraint instance
+ */
+ public static create(properties?: google.container.v1.IMaxPodsConstraint): google.container.v1.MaxPodsConstraint;
+
+ /**
+ * Encodes the specified MaxPodsConstraint message. Does not implicitly {@link google.container.v1.MaxPodsConstraint.verify|verify} messages.
+ * @param message MaxPodsConstraint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMaxPodsConstraint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MaxPodsConstraint message, length delimited. Does not implicitly {@link google.container.v1.MaxPodsConstraint.verify|verify} messages.
+ * @param message MaxPodsConstraint message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMaxPodsConstraint, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MaxPodsConstraint message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MaxPodsConstraint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MaxPodsConstraint;
+
+ /**
+ * Decodes a MaxPodsConstraint message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MaxPodsConstraint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MaxPodsConstraint;
+
+ /**
+ * Verifies a MaxPodsConstraint message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MaxPodsConstraint message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MaxPodsConstraint
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MaxPodsConstraint;
+
+ /**
+ * Creates a plain object from a MaxPodsConstraint message. Also converts values to other types if specified.
+ * @param message MaxPodsConstraint
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MaxPodsConstraint, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MaxPodsConstraint to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MaxPodsConstraint
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WorkloadIdentityConfig. */
+ interface IWorkloadIdentityConfig {
+
+ /** WorkloadIdentityConfig workloadPool */
+ workloadPool?: (string|null);
+ }
+
+ /** Represents a WorkloadIdentityConfig. */
+ class WorkloadIdentityConfig implements IWorkloadIdentityConfig {
+
+ /**
+ * Constructs a new WorkloadIdentityConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IWorkloadIdentityConfig);
+
+ /** WorkloadIdentityConfig workloadPool. */
+ public workloadPool: string;
+
+ /**
+ * Creates a new WorkloadIdentityConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WorkloadIdentityConfig instance
+ */
+ public static create(properties?: google.container.v1.IWorkloadIdentityConfig): google.container.v1.WorkloadIdentityConfig;
+
+ /**
+ * Encodes the specified WorkloadIdentityConfig message. Does not implicitly {@link google.container.v1.WorkloadIdentityConfig.verify|verify} messages.
+ * @param message WorkloadIdentityConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IWorkloadIdentityConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WorkloadIdentityConfig message, length delimited. Does not implicitly {@link google.container.v1.WorkloadIdentityConfig.verify|verify} messages.
+ * @param message WorkloadIdentityConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IWorkloadIdentityConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WorkloadIdentityConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WorkloadIdentityConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.WorkloadIdentityConfig;
+
+ /**
+ * Decodes a WorkloadIdentityConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WorkloadIdentityConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.WorkloadIdentityConfig;
+
+ /**
+ * Verifies a WorkloadIdentityConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WorkloadIdentityConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WorkloadIdentityConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.WorkloadIdentityConfig;
+
+ /**
+ * Creates a plain object from a WorkloadIdentityConfig message. Also converts values to other types if specified.
+ * @param message WorkloadIdentityConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.WorkloadIdentityConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WorkloadIdentityConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WorkloadIdentityConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IdentityServiceConfig. */
+ interface IIdentityServiceConfig {
+
+ /** IdentityServiceConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents an IdentityServiceConfig. */
+ class IdentityServiceConfig implements IIdentityServiceConfig {
+
+ /**
+ * Constructs a new IdentityServiceConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IIdentityServiceConfig);
+
+ /** IdentityServiceConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new IdentityServiceConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IdentityServiceConfig instance
+ */
+ public static create(properties?: google.container.v1.IIdentityServiceConfig): google.container.v1.IdentityServiceConfig;
+
+ /**
+ * Encodes the specified IdentityServiceConfig message. Does not implicitly {@link google.container.v1.IdentityServiceConfig.verify|verify} messages.
+ * @param message IdentityServiceConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IIdentityServiceConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IdentityServiceConfig message, length delimited. Does not implicitly {@link google.container.v1.IdentityServiceConfig.verify|verify} messages.
+ * @param message IdentityServiceConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IIdentityServiceConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IdentityServiceConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IdentityServiceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.IdentityServiceConfig;
+
+ /**
+ * Decodes an IdentityServiceConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IdentityServiceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.IdentityServiceConfig;
+
+ /**
+ * Verifies an IdentityServiceConfig message.
+ * @param message Plain 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 IdentityServiceConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IdentityServiceConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.IdentityServiceConfig;
+
+ /**
+ * Creates a plain object from an IdentityServiceConfig message. Also converts values to other types if specified.
+ * @param message IdentityServiceConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.IdentityServiceConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IdentityServiceConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IdentityServiceConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MeshCertificates. */
+ interface IMeshCertificates {
+
+ /** MeshCertificates enableCertificates */
+ enableCertificates?: (google.protobuf.IBoolValue|null);
+ }
+
+ /** Represents a MeshCertificates. */
+ class MeshCertificates implements IMeshCertificates {
+
+ /**
+ * Constructs a new MeshCertificates.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMeshCertificates);
+
+ /** MeshCertificates enableCertificates. */
+ public enableCertificates?: (google.protobuf.IBoolValue|null);
+
+ /**
+ * Creates a new MeshCertificates instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MeshCertificates instance
+ */
+ public static create(properties?: google.container.v1.IMeshCertificates): google.container.v1.MeshCertificates;
+
+ /**
+ * Encodes the specified MeshCertificates message. Does not implicitly {@link google.container.v1.MeshCertificates.verify|verify} messages.
+ * @param message MeshCertificates message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMeshCertificates, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MeshCertificates message, length delimited. Does not implicitly {@link google.container.v1.MeshCertificates.verify|verify} messages.
+ * @param message MeshCertificates message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMeshCertificates, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MeshCertificates message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MeshCertificates
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MeshCertificates;
+
+ /**
+ * Decodes a MeshCertificates message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MeshCertificates
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MeshCertificates;
+
+ /**
+ * Verifies a MeshCertificates message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MeshCertificates message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MeshCertificates
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MeshCertificates;
+
+ /**
+ * Creates a plain object from a MeshCertificates message. Also converts values to other types if specified.
+ * @param message MeshCertificates
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MeshCertificates, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MeshCertificates to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MeshCertificates
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DatabaseEncryption. */
+ interface IDatabaseEncryption {
+
+ /** DatabaseEncryption state */
+ state?: (google.container.v1.DatabaseEncryption.State|keyof typeof google.container.v1.DatabaseEncryption.State|null);
+
+ /** DatabaseEncryption keyName */
+ keyName?: (string|null);
+ }
+
+ /** Represents a DatabaseEncryption. */
+ class DatabaseEncryption implements IDatabaseEncryption {
+
+ /**
+ * Constructs a new DatabaseEncryption.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDatabaseEncryption);
+
+ /** DatabaseEncryption state. */
+ public state: (google.container.v1.DatabaseEncryption.State|keyof typeof google.container.v1.DatabaseEncryption.State);
+
+ /** DatabaseEncryption keyName. */
+ public keyName: string;
+
+ /**
+ * Creates a new DatabaseEncryption instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DatabaseEncryption instance
+ */
+ public static create(properties?: google.container.v1.IDatabaseEncryption): google.container.v1.DatabaseEncryption;
+
+ /**
+ * Encodes the specified DatabaseEncryption message. Does not implicitly {@link google.container.v1.DatabaseEncryption.verify|verify} messages.
+ * @param message DatabaseEncryption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDatabaseEncryption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DatabaseEncryption message, length delimited. Does not implicitly {@link google.container.v1.DatabaseEncryption.verify|verify} messages.
+ * @param message DatabaseEncryption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDatabaseEncryption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DatabaseEncryption message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DatabaseEncryption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DatabaseEncryption;
+
+ /**
+ * Decodes a DatabaseEncryption message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DatabaseEncryption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DatabaseEncryption;
+
+ /**
+ * Verifies a DatabaseEncryption message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DatabaseEncryption message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DatabaseEncryption
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DatabaseEncryption;
+
+ /**
+ * Creates a plain object from a DatabaseEncryption message. Also converts values to other types if specified.
+ * @param message DatabaseEncryption
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DatabaseEncryption, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DatabaseEncryption to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DatabaseEncryption
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DatabaseEncryption {
+
+ /** State enum. */
+ enum State {
+ UNKNOWN = 0,
+ ENCRYPTED = 1,
+ DECRYPTED = 2
+ }
+ }
+
+ /** Properties of a ListUsableSubnetworksRequest. */
+ interface IListUsableSubnetworksRequest {
+
+ /** ListUsableSubnetworksRequest parent */
+ parent?: (string|null);
+
+ /** ListUsableSubnetworksRequest filter */
+ filter?: (string|null);
+
+ /** ListUsableSubnetworksRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListUsableSubnetworksRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListUsableSubnetworksRequest. */
+ class ListUsableSubnetworksRequest implements IListUsableSubnetworksRequest {
+
+ /**
+ * Constructs a new ListUsableSubnetworksRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListUsableSubnetworksRequest);
+
+ /** ListUsableSubnetworksRequest parent. */
+ public parent: string;
+
+ /** ListUsableSubnetworksRequest filter. */
+ public filter: string;
+
+ /** ListUsableSubnetworksRequest pageSize. */
+ public pageSize: number;
+
+ /** ListUsableSubnetworksRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListUsableSubnetworksRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListUsableSubnetworksRequest instance
+ */
+ public static create(properties?: google.container.v1.IListUsableSubnetworksRequest): google.container.v1.ListUsableSubnetworksRequest;
+
+ /**
+ * Encodes the specified ListUsableSubnetworksRequest message. Does not implicitly {@link google.container.v1.ListUsableSubnetworksRequest.verify|verify} messages.
+ * @param message ListUsableSubnetworksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListUsableSubnetworksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListUsableSubnetworksRequest message, length delimited. Does not implicitly {@link google.container.v1.ListUsableSubnetworksRequest.verify|verify} messages.
+ * @param message ListUsableSubnetworksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListUsableSubnetworksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListUsableSubnetworksRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListUsableSubnetworksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListUsableSubnetworksRequest;
+
+ /**
+ * Decodes a ListUsableSubnetworksRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListUsableSubnetworksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListUsableSubnetworksRequest;
+
+ /**
+ * Verifies a ListUsableSubnetworksRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListUsableSubnetworksRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListUsableSubnetworksRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListUsableSubnetworksRequest;
+
+ /**
+ * Creates a plain object from a ListUsableSubnetworksRequest message. Also converts values to other types if specified.
+ * @param message ListUsableSubnetworksRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListUsableSubnetworksRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListUsableSubnetworksRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListUsableSubnetworksRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListUsableSubnetworksResponse. */
+ interface IListUsableSubnetworksResponse {
+
+ /** ListUsableSubnetworksResponse subnetworks */
+ subnetworks?: (google.container.v1.IUsableSubnetwork[]|null);
+
+ /** ListUsableSubnetworksResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListUsableSubnetworksResponse. */
+ class ListUsableSubnetworksResponse implements IListUsableSubnetworksResponse {
+
+ /**
+ * Constructs a new ListUsableSubnetworksResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IListUsableSubnetworksResponse);
+
+ /** ListUsableSubnetworksResponse subnetworks. */
+ public subnetworks: google.container.v1.IUsableSubnetwork[];
+
+ /** ListUsableSubnetworksResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListUsableSubnetworksResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListUsableSubnetworksResponse instance
+ */
+ public static create(properties?: google.container.v1.IListUsableSubnetworksResponse): google.container.v1.ListUsableSubnetworksResponse;
+
+ /**
+ * Encodes the specified ListUsableSubnetworksResponse message. Does not implicitly {@link google.container.v1.ListUsableSubnetworksResponse.verify|verify} messages.
+ * @param message ListUsableSubnetworksResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IListUsableSubnetworksResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListUsableSubnetworksResponse message, length delimited. Does not implicitly {@link google.container.v1.ListUsableSubnetworksResponse.verify|verify} messages.
+ * @param message ListUsableSubnetworksResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IListUsableSubnetworksResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListUsableSubnetworksResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListUsableSubnetworksResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ListUsableSubnetworksResponse;
+
+ /**
+ * Decodes a ListUsableSubnetworksResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListUsableSubnetworksResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ListUsableSubnetworksResponse;
+
+ /**
+ * Verifies a ListUsableSubnetworksResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListUsableSubnetworksResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListUsableSubnetworksResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ListUsableSubnetworksResponse;
+
+ /**
+ * Creates a plain object from a ListUsableSubnetworksResponse message. Also converts values to other types if specified.
+ * @param message ListUsableSubnetworksResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ListUsableSubnetworksResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListUsableSubnetworksResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListUsableSubnetworksResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UsableSubnetworkSecondaryRange. */
+ interface IUsableSubnetworkSecondaryRange {
+
+ /** UsableSubnetworkSecondaryRange rangeName */
+ rangeName?: (string|null);
+
+ /** UsableSubnetworkSecondaryRange ipCidrRange */
+ ipCidrRange?: (string|null);
+
+ /** UsableSubnetworkSecondaryRange status */
+ status?: (google.container.v1.UsableSubnetworkSecondaryRange.Status|keyof typeof google.container.v1.UsableSubnetworkSecondaryRange.Status|null);
+ }
+
+ /** Represents a UsableSubnetworkSecondaryRange. */
+ class UsableSubnetworkSecondaryRange implements IUsableSubnetworkSecondaryRange {
+
+ /**
+ * Constructs a new UsableSubnetworkSecondaryRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUsableSubnetworkSecondaryRange);
+
+ /** UsableSubnetworkSecondaryRange rangeName. */
+ public rangeName: string;
+
+ /** UsableSubnetworkSecondaryRange ipCidrRange. */
+ public ipCidrRange: string;
+
+ /** UsableSubnetworkSecondaryRange status. */
+ public status: (google.container.v1.UsableSubnetworkSecondaryRange.Status|keyof typeof google.container.v1.UsableSubnetworkSecondaryRange.Status);
+
+ /**
+ * Creates a new UsableSubnetworkSecondaryRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UsableSubnetworkSecondaryRange instance
+ */
+ public static create(properties?: google.container.v1.IUsableSubnetworkSecondaryRange): google.container.v1.UsableSubnetworkSecondaryRange;
+
+ /**
+ * Encodes the specified UsableSubnetworkSecondaryRange message. Does not implicitly {@link google.container.v1.UsableSubnetworkSecondaryRange.verify|verify} messages.
+ * @param message UsableSubnetworkSecondaryRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUsableSubnetworkSecondaryRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UsableSubnetworkSecondaryRange message, length delimited. Does not implicitly {@link google.container.v1.UsableSubnetworkSecondaryRange.verify|verify} messages.
+ * @param message UsableSubnetworkSecondaryRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUsableSubnetworkSecondaryRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UsableSubnetworkSecondaryRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UsableSubnetworkSecondaryRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UsableSubnetworkSecondaryRange;
+
+ /**
+ * Decodes a UsableSubnetworkSecondaryRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UsableSubnetworkSecondaryRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UsableSubnetworkSecondaryRange;
+
+ /**
+ * Verifies a UsableSubnetworkSecondaryRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UsableSubnetworkSecondaryRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UsableSubnetworkSecondaryRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UsableSubnetworkSecondaryRange;
+
+ /**
+ * Creates a plain object from a UsableSubnetworkSecondaryRange message. Also converts values to other types if specified.
+ * @param message UsableSubnetworkSecondaryRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UsableSubnetworkSecondaryRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UsableSubnetworkSecondaryRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UsableSubnetworkSecondaryRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace UsableSubnetworkSecondaryRange {
+
+ /** Status enum. */
+ enum Status {
+ UNKNOWN = 0,
+ UNUSED = 1,
+ IN_USE_SERVICE = 2,
+ IN_USE_SHAREABLE_POD = 3,
+ IN_USE_MANAGED_POD = 4
+ }
+ }
+
+ /** Properties of a UsableSubnetwork. */
+ interface IUsableSubnetwork {
+
+ /** UsableSubnetwork subnetwork */
+ subnetwork?: (string|null);
+
+ /** UsableSubnetwork network */
+ network?: (string|null);
+
+ /** UsableSubnetwork ipCidrRange */
+ ipCidrRange?: (string|null);
+
+ /** UsableSubnetwork secondaryIpRanges */
+ secondaryIpRanges?: (google.container.v1.IUsableSubnetworkSecondaryRange[]|null);
+
+ /** UsableSubnetwork statusMessage */
+ statusMessage?: (string|null);
+ }
+
+ /** Represents a UsableSubnetwork. */
+ class UsableSubnetwork implements IUsableSubnetwork {
+
+ /**
+ * Constructs a new UsableSubnetwork.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUsableSubnetwork);
+
+ /** UsableSubnetwork subnetwork. */
+ public subnetwork: string;
+
+ /** UsableSubnetwork network. */
+ public network: string;
+
+ /** UsableSubnetwork ipCidrRange. */
+ public ipCidrRange: string;
+
+ /** UsableSubnetwork secondaryIpRanges. */
+ public secondaryIpRanges: google.container.v1.IUsableSubnetworkSecondaryRange[];
+
+ /** UsableSubnetwork statusMessage. */
+ public statusMessage: string;
+
+ /**
+ * Creates a new UsableSubnetwork instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UsableSubnetwork instance
+ */
+ public static create(properties?: google.container.v1.IUsableSubnetwork): google.container.v1.UsableSubnetwork;
+
+ /**
+ * Encodes the specified UsableSubnetwork message. Does not implicitly {@link google.container.v1.UsableSubnetwork.verify|verify} messages.
+ * @param message UsableSubnetwork message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUsableSubnetwork, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UsableSubnetwork message, length delimited. Does not implicitly {@link google.container.v1.UsableSubnetwork.verify|verify} messages.
+ * @param message UsableSubnetwork message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUsableSubnetwork, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UsableSubnetwork message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UsableSubnetwork
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UsableSubnetwork;
+
+ /**
+ * Decodes a UsableSubnetwork message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UsableSubnetwork
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UsableSubnetwork;
+
+ /**
+ * Verifies a UsableSubnetwork message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UsableSubnetwork message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UsableSubnetwork
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UsableSubnetwork;
+
+ /**
+ * Creates a plain object from a UsableSubnetwork message. Also converts values to other types if specified.
+ * @param message UsableSubnetwork
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UsableSubnetwork, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UsableSubnetwork to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UsableSubnetwork
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ResourceUsageExportConfig. */
+ interface IResourceUsageExportConfig {
+
+ /** ResourceUsageExportConfig bigqueryDestination */
+ bigqueryDestination?: (google.container.v1.ResourceUsageExportConfig.IBigQueryDestination|null);
+
+ /** ResourceUsageExportConfig enableNetworkEgressMetering */
+ enableNetworkEgressMetering?: (boolean|null);
+
+ /** ResourceUsageExportConfig consumptionMeteringConfig */
+ consumptionMeteringConfig?: (google.container.v1.ResourceUsageExportConfig.IConsumptionMeteringConfig|null);
+ }
+
+ /** Represents a ResourceUsageExportConfig. */
+ class ResourceUsageExportConfig implements IResourceUsageExportConfig {
+
+ /**
+ * Constructs a new ResourceUsageExportConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IResourceUsageExportConfig);
+
+ /** ResourceUsageExportConfig bigqueryDestination. */
+ public bigqueryDestination?: (google.container.v1.ResourceUsageExportConfig.IBigQueryDestination|null);
+
+ /** ResourceUsageExportConfig enableNetworkEgressMetering. */
+ public enableNetworkEgressMetering: boolean;
+
+ /** ResourceUsageExportConfig consumptionMeteringConfig. */
+ public consumptionMeteringConfig?: (google.container.v1.ResourceUsageExportConfig.IConsumptionMeteringConfig|null);
+
+ /**
+ * Creates a new ResourceUsageExportConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceUsageExportConfig instance
+ */
+ public static create(properties?: google.container.v1.IResourceUsageExportConfig): google.container.v1.ResourceUsageExportConfig;
+
+ /**
+ * Encodes the specified ResourceUsageExportConfig message. Does not implicitly {@link google.container.v1.ResourceUsageExportConfig.verify|verify} messages.
+ * @param message ResourceUsageExportConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IResourceUsageExportConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceUsageExportConfig message, length delimited. Does not implicitly {@link google.container.v1.ResourceUsageExportConfig.verify|verify} messages.
+ * @param message ResourceUsageExportConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IResourceUsageExportConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceUsageExportConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceUsageExportConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ResourceUsageExportConfig;
+
+ /**
+ * Decodes a ResourceUsageExportConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceUsageExportConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ResourceUsageExportConfig;
+
+ /**
+ * Verifies a ResourceUsageExportConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceUsageExportConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceUsageExportConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ResourceUsageExportConfig;
+
+ /**
+ * Creates a plain object from a ResourceUsageExportConfig message. Also converts values to other types if specified.
+ * @param message ResourceUsageExportConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ResourceUsageExportConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceUsageExportConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceUsageExportConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ResourceUsageExportConfig {
+
+ /** Properties of a BigQueryDestination. */
+ interface IBigQueryDestination {
+
+ /** BigQueryDestination datasetId */
+ datasetId?: (string|null);
+ }
+
+ /** Represents a BigQueryDestination. */
+ class BigQueryDestination implements IBigQueryDestination {
+
+ /**
+ * Constructs a new BigQueryDestination.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ResourceUsageExportConfig.IBigQueryDestination);
+
+ /** BigQueryDestination datasetId. */
+ public datasetId: string;
+
+ /**
+ * Creates a new BigQueryDestination instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BigQueryDestination instance
+ */
+ public static create(properties?: google.container.v1.ResourceUsageExportConfig.IBigQueryDestination): google.container.v1.ResourceUsageExportConfig.BigQueryDestination;
+
+ /**
+ * Encodes the specified BigQueryDestination message. Does not implicitly {@link google.container.v1.ResourceUsageExportConfig.BigQueryDestination.verify|verify} messages.
+ * @param message BigQueryDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ResourceUsageExportConfig.IBigQueryDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BigQueryDestination message, length delimited. Does not implicitly {@link google.container.v1.ResourceUsageExportConfig.BigQueryDestination.verify|verify} messages.
+ * @param message BigQueryDestination message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ResourceUsageExportConfig.IBigQueryDestination, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BigQueryDestination message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BigQueryDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ResourceUsageExportConfig.BigQueryDestination;
+
+ /**
+ * Decodes a BigQueryDestination message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BigQueryDestination
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ResourceUsageExportConfig.BigQueryDestination;
+
+ /**
+ * Verifies a BigQueryDestination message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BigQueryDestination message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BigQueryDestination
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ResourceUsageExportConfig.BigQueryDestination;
+
+ /**
+ * Creates a plain object from a BigQueryDestination message. Also converts values to other types if specified.
+ * @param message BigQueryDestination
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ResourceUsageExportConfig.BigQueryDestination, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BigQueryDestination to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BigQueryDestination
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ConsumptionMeteringConfig. */
+ interface IConsumptionMeteringConfig {
+
+ /** ConsumptionMeteringConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ConsumptionMeteringConfig. */
+ class ConsumptionMeteringConfig implements IConsumptionMeteringConfig {
+
+ /**
+ * Constructs a new ConsumptionMeteringConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ResourceUsageExportConfig.IConsumptionMeteringConfig);
+
+ /** ConsumptionMeteringConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ConsumptionMeteringConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ConsumptionMeteringConfig instance
+ */
+ public static create(properties?: google.container.v1.ResourceUsageExportConfig.IConsumptionMeteringConfig): google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig;
+
+ /**
+ * Encodes the specified ConsumptionMeteringConfig message. Does not implicitly {@link google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig.verify|verify} messages.
+ * @param message ConsumptionMeteringConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ResourceUsageExportConfig.IConsumptionMeteringConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ConsumptionMeteringConfig message, length delimited. Does not implicitly {@link google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig.verify|verify} messages.
+ * @param message ConsumptionMeteringConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ResourceUsageExportConfig.IConsumptionMeteringConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ConsumptionMeteringConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ConsumptionMeteringConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig;
+
+ /**
+ * Decodes a ConsumptionMeteringConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ConsumptionMeteringConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig;
+
+ /**
+ * Verifies a ConsumptionMeteringConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ConsumptionMeteringConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ConsumptionMeteringConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig;
+
+ /**
+ * Creates a plain object from a ConsumptionMeteringConfig message. Also converts values to other types if specified.
+ * @param message ConsumptionMeteringConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ResourceUsageExportConfig.ConsumptionMeteringConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ConsumptionMeteringConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ConsumptionMeteringConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a VerticalPodAutoscaling. */
+ interface IVerticalPodAutoscaling {
+
+ /** VerticalPodAutoscaling enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a VerticalPodAutoscaling. */
+ class VerticalPodAutoscaling implements IVerticalPodAutoscaling {
+
+ /**
+ * Constructs a new VerticalPodAutoscaling.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IVerticalPodAutoscaling);
+
+ /** VerticalPodAutoscaling enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new VerticalPodAutoscaling instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VerticalPodAutoscaling instance
+ */
+ public static create(properties?: google.container.v1.IVerticalPodAutoscaling): google.container.v1.VerticalPodAutoscaling;
+
+ /**
+ * Encodes the specified VerticalPodAutoscaling message. Does not implicitly {@link google.container.v1.VerticalPodAutoscaling.verify|verify} messages.
+ * @param message VerticalPodAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IVerticalPodAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VerticalPodAutoscaling message, length delimited. Does not implicitly {@link google.container.v1.VerticalPodAutoscaling.verify|verify} messages.
+ * @param message VerticalPodAutoscaling message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IVerticalPodAutoscaling, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VerticalPodAutoscaling message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VerticalPodAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.VerticalPodAutoscaling;
+
+ /**
+ * Decodes a VerticalPodAutoscaling message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VerticalPodAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.VerticalPodAutoscaling;
+
+ /**
+ * Verifies a VerticalPodAutoscaling message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a VerticalPodAutoscaling message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VerticalPodAutoscaling
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.VerticalPodAutoscaling;
+
+ /**
+ * Creates a plain object from a VerticalPodAutoscaling message. Also converts values to other types if specified.
+ * @param message VerticalPodAutoscaling
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.VerticalPodAutoscaling, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VerticalPodAutoscaling to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VerticalPodAutoscaling
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DefaultSnatStatus. */
+ interface IDefaultSnatStatus {
+
+ /** DefaultSnatStatus disabled */
+ disabled?: (boolean|null);
+ }
+
+ /** Represents a DefaultSnatStatus. */
+ class DefaultSnatStatus implements IDefaultSnatStatus {
+
+ /**
+ * Constructs a new DefaultSnatStatus.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IDefaultSnatStatus);
+
+ /** DefaultSnatStatus disabled. */
+ public disabled: boolean;
+
+ /**
+ * Creates a new DefaultSnatStatus instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DefaultSnatStatus instance
+ */
+ public static create(properties?: google.container.v1.IDefaultSnatStatus): google.container.v1.DefaultSnatStatus;
+
+ /**
+ * Encodes the specified DefaultSnatStatus message. Does not implicitly {@link google.container.v1.DefaultSnatStatus.verify|verify} messages.
+ * @param message DefaultSnatStatus message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IDefaultSnatStatus, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DefaultSnatStatus message, length delimited. Does not implicitly {@link google.container.v1.DefaultSnatStatus.verify|verify} messages.
+ * @param message DefaultSnatStatus message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IDefaultSnatStatus, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DefaultSnatStatus message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DefaultSnatStatus
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.DefaultSnatStatus;
+
+ /**
+ * Decodes a DefaultSnatStatus message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DefaultSnatStatus
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.DefaultSnatStatus;
+
+ /**
+ * Verifies a DefaultSnatStatus message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DefaultSnatStatus message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DefaultSnatStatus
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.DefaultSnatStatus;
+
+ /**
+ * Creates a plain object from a DefaultSnatStatus message. Also converts values to other types if specified.
+ * @param message DefaultSnatStatus
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.DefaultSnatStatus, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DefaultSnatStatus to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DefaultSnatStatus
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ShieldedNodes. */
+ interface IShieldedNodes {
+
+ /** ShieldedNodes enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ShieldedNodes. */
+ class ShieldedNodes implements IShieldedNodes {
+
+ /**
+ * Constructs a new ShieldedNodes.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IShieldedNodes);
+
+ /** ShieldedNodes enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ShieldedNodes instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ShieldedNodes instance
+ */
+ public static create(properties?: google.container.v1.IShieldedNodes): google.container.v1.ShieldedNodes;
+
+ /**
+ * Encodes the specified ShieldedNodes message. Does not implicitly {@link google.container.v1.ShieldedNodes.verify|verify} messages.
+ * @param message ShieldedNodes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IShieldedNodes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ShieldedNodes message, length delimited. Does not implicitly {@link google.container.v1.ShieldedNodes.verify|verify} messages.
+ * @param message ShieldedNodes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IShieldedNodes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ShieldedNodes message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ShieldedNodes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ShieldedNodes;
+
+ /**
+ * Decodes a ShieldedNodes message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ShieldedNodes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ShieldedNodes;
+
+ /**
+ * Verifies a ShieldedNodes message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ShieldedNodes message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ShieldedNodes
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ShieldedNodes;
+
+ /**
+ * Creates a plain object from a ShieldedNodes message. Also converts values to other types if specified.
+ * @param message ShieldedNodes
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ShieldedNodes, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ShieldedNodes to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ShieldedNodes
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a VirtualNIC. */
+ interface IVirtualNIC {
+
+ /** VirtualNIC enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a VirtualNIC. */
+ class VirtualNIC implements IVirtualNIC {
+
+ /**
+ * Constructs a new VirtualNIC.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IVirtualNIC);
+
+ /** VirtualNIC enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new VirtualNIC instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns VirtualNIC instance
+ */
+ public static create(properties?: google.container.v1.IVirtualNIC): google.container.v1.VirtualNIC;
+
+ /**
+ * Encodes the specified VirtualNIC message. Does not implicitly {@link google.container.v1.VirtualNIC.verify|verify} messages.
+ * @param message VirtualNIC message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IVirtualNIC, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified VirtualNIC message, length delimited. Does not implicitly {@link google.container.v1.VirtualNIC.verify|verify} messages.
+ * @param message VirtualNIC message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IVirtualNIC, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a VirtualNIC message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns VirtualNIC
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.VirtualNIC;
+
+ /**
+ * Decodes a VirtualNIC message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns VirtualNIC
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.VirtualNIC;
+
+ /**
+ * Verifies a VirtualNIC message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a VirtualNIC message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns VirtualNIC
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.VirtualNIC;
+
+ /**
+ * Creates a plain object from a VirtualNIC message. Also converts values to other types if specified.
+ * @param message VirtualNIC
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.VirtualNIC, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this VirtualNIC to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for VirtualNIC
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** PrivateIPv6GoogleAccess enum. */
+ enum PrivateIPv6GoogleAccess {
+ PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0,
+ PRIVATE_IPV6_GOOGLE_ACCESS_DISABLED = 1,
+ PRIVATE_IPV6_GOOGLE_ACCESS_TO_GOOGLE = 2,
+ PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3
+ }
+
+ /** Properties of a NotificationConfig. */
+ interface INotificationConfig {
+
+ /** NotificationConfig pubsub */
+ pubsub?: (google.container.v1.NotificationConfig.IPubSub|null);
+ }
+
+ /** Represents a NotificationConfig. */
+ class NotificationConfig implements INotificationConfig {
+
+ /**
+ * Constructs a new NotificationConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INotificationConfig);
+
+ /** NotificationConfig pubsub. */
+ public pubsub?: (google.container.v1.NotificationConfig.IPubSub|null);
+
+ /**
+ * Creates a new NotificationConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NotificationConfig instance
+ */
+ public static create(properties?: google.container.v1.INotificationConfig): google.container.v1.NotificationConfig;
+
+ /**
+ * Encodes the specified NotificationConfig message. Does not implicitly {@link google.container.v1.NotificationConfig.verify|verify} messages.
+ * @param message NotificationConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INotificationConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NotificationConfig message, length delimited. Does not implicitly {@link google.container.v1.NotificationConfig.verify|verify} messages.
+ * @param message NotificationConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INotificationConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NotificationConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NotificationConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NotificationConfig;
+
+ /**
+ * Decodes a NotificationConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NotificationConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NotificationConfig;
+
+ /**
+ * Verifies a NotificationConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NotificationConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NotificationConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NotificationConfig;
+
+ /**
+ * Creates a plain object from a NotificationConfig message. Also converts values to other types if specified.
+ * @param message NotificationConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NotificationConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NotificationConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NotificationConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NotificationConfig {
+
+ /** EventType enum. */
+ enum EventType {
+ EVENT_TYPE_UNSPECIFIED = 0,
+ UPGRADE_AVAILABLE_EVENT = 1,
+ UPGRADE_EVENT = 2,
+ SECURITY_BULLETIN_EVENT = 3
+ }
+
+ /** Properties of a PubSub. */
+ interface IPubSub {
+
+ /** PubSub enabled */
+ enabled?: (boolean|null);
+
+ /** PubSub topic */
+ topic?: (string|null);
+
+ /** PubSub filter */
+ filter?: (google.container.v1.NotificationConfig.IFilter|null);
+ }
+
+ /** Represents a PubSub. */
+ class PubSub implements IPubSub {
+
+ /**
+ * Constructs a new PubSub.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.NotificationConfig.IPubSub);
+
+ /** PubSub enabled. */
+ public enabled: boolean;
+
+ /** PubSub topic. */
+ public topic: string;
+
+ /** PubSub filter. */
+ public filter?: (google.container.v1.NotificationConfig.IFilter|null);
+
+ /**
+ * Creates a new PubSub instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PubSub instance
+ */
+ public static create(properties?: google.container.v1.NotificationConfig.IPubSub): google.container.v1.NotificationConfig.PubSub;
+
+ /**
+ * Encodes the specified PubSub message. Does not implicitly {@link google.container.v1.NotificationConfig.PubSub.verify|verify} messages.
+ * @param message PubSub message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.NotificationConfig.IPubSub, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PubSub message, length delimited. Does not implicitly {@link google.container.v1.NotificationConfig.PubSub.verify|verify} messages.
+ * @param message PubSub message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.NotificationConfig.IPubSub, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PubSub message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PubSub
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NotificationConfig.PubSub;
+
+ /**
+ * Decodes a PubSub message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PubSub
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NotificationConfig.PubSub;
+
+ /**
+ * Verifies a PubSub message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PubSub message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PubSub
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NotificationConfig.PubSub;
+
+ /**
+ * Creates a plain object from a PubSub message. Also converts values to other types if specified.
+ * @param message PubSub
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NotificationConfig.PubSub, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PubSub to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PubSub
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Filter. */
+ interface IFilter {
+
+ /** Filter eventType */
+ eventType?: (google.container.v1.NotificationConfig.EventType[]|null);
+ }
+
+ /** Represents a Filter. */
+ class Filter implements IFilter {
+
+ /**
+ * Constructs a new Filter.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.NotificationConfig.IFilter);
+
+ /** Filter eventType. */
+ public eventType: google.container.v1.NotificationConfig.EventType[];
+
+ /**
+ * Creates a new Filter instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Filter instance
+ */
+ public static create(properties?: google.container.v1.NotificationConfig.IFilter): google.container.v1.NotificationConfig.Filter;
+
+ /**
+ * Encodes the specified Filter message. Does not implicitly {@link google.container.v1.NotificationConfig.Filter.verify|verify} messages.
+ * @param message Filter message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.NotificationConfig.IFilter, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Filter message, length delimited. Does not implicitly {@link google.container.v1.NotificationConfig.Filter.verify|verify} messages.
+ * @param message Filter message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.NotificationConfig.IFilter, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Filter message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Filter
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NotificationConfig.Filter;
+
+ /**
+ * Decodes a Filter message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Filter
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NotificationConfig.Filter;
+
+ /**
+ * Verifies a Filter message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Filter message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Filter
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NotificationConfig.Filter;
+
+ /**
+ * Creates a plain object from a Filter message. Also converts values to other types if specified.
+ * @param message Filter
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NotificationConfig.Filter, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Filter to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Filter
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a ConfidentialNodes. */
+ interface IConfidentialNodes {
+
+ /** ConfidentialNodes enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ConfidentialNodes. */
+ class ConfidentialNodes implements IConfidentialNodes {
+
+ /**
+ * Constructs a new ConfidentialNodes.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IConfidentialNodes);
+
+ /** ConfidentialNodes enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ConfidentialNodes instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ConfidentialNodes instance
+ */
+ public static create(properties?: google.container.v1.IConfidentialNodes): google.container.v1.ConfidentialNodes;
+
+ /**
+ * Encodes the specified ConfidentialNodes message. Does not implicitly {@link google.container.v1.ConfidentialNodes.verify|verify} messages.
+ * @param message ConfidentialNodes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IConfidentialNodes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ConfidentialNodes message, length delimited. Does not implicitly {@link google.container.v1.ConfidentialNodes.verify|verify} messages.
+ * @param message ConfidentialNodes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IConfidentialNodes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ConfidentialNodes message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ConfidentialNodes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ConfidentialNodes;
+
+ /**
+ * Decodes a ConfidentialNodes message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ConfidentialNodes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ConfidentialNodes;
+
+ /**
+ * Verifies a ConfidentialNodes message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ConfidentialNodes message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ConfidentialNodes
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ConfidentialNodes;
+
+ /**
+ * Creates a plain object from a ConfidentialNodes message. Also converts values to other types if specified.
+ * @param message ConfidentialNodes
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ConfidentialNodes, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ConfidentialNodes to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ConfidentialNodes
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** UpgradeResourceType enum. */
+ enum UpgradeResourceType {
+ UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0,
+ MASTER = 1,
+ NODE_POOL = 2
+ }
+
+ /** Properties of an UpgradeEvent. */
+ interface IUpgradeEvent {
+
+ /** UpgradeEvent resourceType */
+ resourceType?: (google.container.v1.UpgradeResourceType|keyof typeof google.container.v1.UpgradeResourceType|null);
+
+ /** UpgradeEvent operation */
+ operation?: (string|null);
+
+ /** UpgradeEvent operationStartTime */
+ operationStartTime?: (google.protobuf.ITimestamp|null);
+
+ /** UpgradeEvent currentVersion */
+ currentVersion?: (string|null);
+
+ /** UpgradeEvent targetVersion */
+ targetVersion?: (string|null);
+
+ /** UpgradeEvent resource */
+ resource?: (string|null);
+ }
+
+ /** Represents an UpgradeEvent. */
+ class UpgradeEvent implements IUpgradeEvent {
+
+ /**
+ * Constructs a new UpgradeEvent.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUpgradeEvent);
+
+ /** UpgradeEvent resourceType. */
+ public resourceType: (google.container.v1.UpgradeResourceType|keyof typeof google.container.v1.UpgradeResourceType);
+
+ /** UpgradeEvent operation. */
+ public operation: string;
+
+ /** UpgradeEvent operationStartTime. */
+ public operationStartTime?: (google.protobuf.ITimestamp|null);
+
+ /** UpgradeEvent currentVersion. */
+ public currentVersion: string;
+
+ /** UpgradeEvent targetVersion. */
+ public targetVersion: string;
+
+ /** UpgradeEvent resource. */
+ public resource: string;
+
+ /**
+ * Creates a new UpgradeEvent instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpgradeEvent instance
+ */
+ public static create(properties?: google.container.v1.IUpgradeEvent): google.container.v1.UpgradeEvent;
+
+ /**
+ * Encodes the specified UpgradeEvent message. Does not implicitly {@link google.container.v1.UpgradeEvent.verify|verify} messages.
+ * @param message UpgradeEvent message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUpgradeEvent, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpgradeEvent message, length delimited. Does not implicitly {@link google.container.v1.UpgradeEvent.verify|verify} messages.
+ * @param message UpgradeEvent message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUpgradeEvent, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpgradeEvent message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpgradeEvent
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UpgradeEvent;
+
+ /**
+ * Decodes an UpgradeEvent message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpgradeEvent
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UpgradeEvent;
+
+ /**
+ * Verifies an UpgradeEvent message.
+ * @param message Plain 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 UpgradeEvent message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpgradeEvent
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UpgradeEvent;
+
+ /**
+ * Creates a plain object from an UpgradeEvent message. Also converts values to other types if specified.
+ * @param message UpgradeEvent
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UpgradeEvent, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpgradeEvent to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpgradeEvent
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpgradeAvailableEvent. */
+ interface IUpgradeAvailableEvent {
+
+ /** UpgradeAvailableEvent version */
+ version?: (string|null);
+
+ /** UpgradeAvailableEvent resourceType */
+ resourceType?: (google.container.v1.UpgradeResourceType|keyof typeof google.container.v1.UpgradeResourceType|null);
+
+ /** UpgradeAvailableEvent releaseChannel */
+ releaseChannel?: (google.container.v1.IReleaseChannel|null);
+
+ /** UpgradeAvailableEvent resource */
+ resource?: (string|null);
+ }
+
+ /** Represents an UpgradeAvailableEvent. */
+ class UpgradeAvailableEvent implements IUpgradeAvailableEvent {
+
+ /**
+ * Constructs a new UpgradeAvailableEvent.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IUpgradeAvailableEvent);
+
+ /** UpgradeAvailableEvent version. */
+ public version: string;
+
+ /** UpgradeAvailableEvent resourceType. */
+ public resourceType: (google.container.v1.UpgradeResourceType|keyof typeof google.container.v1.UpgradeResourceType);
+
+ /** UpgradeAvailableEvent releaseChannel. */
+ public releaseChannel?: (google.container.v1.IReleaseChannel|null);
+
+ /** UpgradeAvailableEvent resource. */
+ public resource: string;
+
+ /**
+ * Creates a new UpgradeAvailableEvent instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpgradeAvailableEvent instance
+ */
+ public static create(properties?: google.container.v1.IUpgradeAvailableEvent): google.container.v1.UpgradeAvailableEvent;
+
+ /**
+ * Encodes the specified UpgradeAvailableEvent message. Does not implicitly {@link google.container.v1.UpgradeAvailableEvent.verify|verify} messages.
+ * @param message UpgradeAvailableEvent message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IUpgradeAvailableEvent, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpgradeAvailableEvent message, length delimited. Does not implicitly {@link google.container.v1.UpgradeAvailableEvent.verify|verify} messages.
+ * @param message UpgradeAvailableEvent message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IUpgradeAvailableEvent, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpgradeAvailableEvent message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpgradeAvailableEvent
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.UpgradeAvailableEvent;
+
+ /**
+ * Decodes an UpgradeAvailableEvent message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpgradeAvailableEvent
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.UpgradeAvailableEvent;
+
+ /**
+ * Verifies an UpgradeAvailableEvent message.
+ * @param message Plain 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 UpgradeAvailableEvent message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpgradeAvailableEvent
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.UpgradeAvailableEvent;
+
+ /**
+ * Creates a plain object from an UpgradeAvailableEvent message. Also converts values to other types if specified.
+ * @param message UpgradeAvailableEvent
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.UpgradeAvailableEvent, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpgradeAvailableEvent to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpgradeAvailableEvent
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SecurityBulletinEvent. */
+ interface ISecurityBulletinEvent {
+
+ /** SecurityBulletinEvent resourceTypeAffected */
+ resourceTypeAffected?: (string|null);
+
+ /** SecurityBulletinEvent bulletinId */
+ bulletinId?: (string|null);
+
+ /** SecurityBulletinEvent cveIds */
+ cveIds?: (string[]|null);
+
+ /** SecurityBulletinEvent severity */
+ severity?: (string|null);
+
+ /** SecurityBulletinEvent bulletinUri */
+ bulletinUri?: (string|null);
+
+ /** SecurityBulletinEvent briefDescription */
+ briefDescription?: (string|null);
+
+ /** SecurityBulletinEvent affectedSupportedMinors */
+ affectedSupportedMinors?: (string[]|null);
+
+ /** SecurityBulletinEvent patchedVersions */
+ patchedVersions?: (string[]|null);
+
+ /** SecurityBulletinEvent suggestedUpgradeTarget */
+ suggestedUpgradeTarget?: (string|null);
+
+ /** SecurityBulletinEvent manualStepsRequired */
+ manualStepsRequired?: (boolean|null);
+ }
+
+ /** Represents a SecurityBulletinEvent. */
+ class SecurityBulletinEvent implements ISecurityBulletinEvent {
+
+ /**
+ * Constructs a new SecurityBulletinEvent.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ISecurityBulletinEvent);
+
+ /** SecurityBulletinEvent resourceTypeAffected. */
+ public resourceTypeAffected: string;
+
+ /** SecurityBulletinEvent bulletinId. */
+ public bulletinId: string;
+
+ /** SecurityBulletinEvent cveIds. */
+ public cveIds: string[];
+
+ /** SecurityBulletinEvent severity. */
+ public severity: string;
+
+ /** SecurityBulletinEvent bulletinUri. */
+ public bulletinUri: string;
+
+ /** SecurityBulletinEvent briefDescription. */
+ public briefDescription: string;
+
+ /** SecurityBulletinEvent affectedSupportedMinors. */
+ public affectedSupportedMinors: string[];
+
+ /** SecurityBulletinEvent patchedVersions. */
+ public patchedVersions: string[];
+
+ /** SecurityBulletinEvent suggestedUpgradeTarget. */
+ public suggestedUpgradeTarget: string;
+
+ /** SecurityBulletinEvent manualStepsRequired. */
+ public manualStepsRequired: boolean;
+
+ /**
+ * Creates a new SecurityBulletinEvent instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityBulletinEvent instance
+ */
+ public static create(properties?: google.container.v1.ISecurityBulletinEvent): google.container.v1.SecurityBulletinEvent;
+
+ /**
+ * Encodes the specified SecurityBulletinEvent message. Does not implicitly {@link google.container.v1.SecurityBulletinEvent.verify|verify} messages.
+ * @param message SecurityBulletinEvent message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ISecurityBulletinEvent, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityBulletinEvent message, length delimited. Does not implicitly {@link google.container.v1.SecurityBulletinEvent.verify|verify} messages.
+ * @param message SecurityBulletinEvent message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ISecurityBulletinEvent, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityBulletinEvent message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityBulletinEvent
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.SecurityBulletinEvent;
+
+ /**
+ * Decodes a SecurityBulletinEvent message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityBulletinEvent
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.SecurityBulletinEvent;
+
+ /**
+ * Verifies a SecurityBulletinEvent message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityBulletinEvent message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityBulletinEvent
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.SecurityBulletinEvent;
+
+ /**
+ * Creates a plain object from a SecurityBulletinEvent message. Also converts values to other types if specified.
+ * @param message SecurityBulletinEvent
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.SecurityBulletinEvent, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityBulletinEvent to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityBulletinEvent
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Autopilot. */
+ interface IAutopilot {
+
+ /** Autopilot enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents an Autopilot. */
+ class Autopilot implements IAutopilot {
+
+ /**
+ * Constructs a new Autopilot.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IAutopilot);
+
+ /** Autopilot enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new Autopilot instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Autopilot instance
+ */
+ public static create(properties?: google.container.v1.IAutopilot): google.container.v1.Autopilot;
+
+ /**
+ * Encodes the specified Autopilot message. Does not implicitly {@link google.container.v1.Autopilot.verify|verify} messages.
+ * @param message Autopilot message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IAutopilot, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Autopilot message, length delimited. Does not implicitly {@link google.container.v1.Autopilot.verify|verify} messages.
+ * @param message Autopilot message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IAutopilot, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Autopilot message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Autopilot
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.Autopilot;
+
+ /**
+ * Decodes an Autopilot message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Autopilot
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.Autopilot;
+
+ /**
+ * Verifies an Autopilot message.
+ * @param message Plain 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 Autopilot message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Autopilot
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.Autopilot;
+
+ /**
+ * Creates a plain object from an Autopilot message. Also converts values to other types if specified.
+ * @param message Autopilot
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.Autopilot, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Autopilot to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Autopilot
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LoggingConfig. */
+ interface ILoggingConfig {
+
+ /** LoggingConfig componentConfig */
+ componentConfig?: (google.container.v1.ILoggingComponentConfig|null);
+ }
+
+ /** Represents a LoggingConfig. */
+ class LoggingConfig implements ILoggingConfig {
+
+ /**
+ * Constructs a new LoggingConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ILoggingConfig);
+
+ /** LoggingConfig componentConfig. */
+ public componentConfig?: (google.container.v1.ILoggingComponentConfig|null);
+
+ /**
+ * Creates a new LoggingConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LoggingConfig instance
+ */
+ public static create(properties?: google.container.v1.ILoggingConfig): google.container.v1.LoggingConfig;
+
+ /**
+ * Encodes the specified LoggingConfig message. Does not implicitly {@link google.container.v1.LoggingConfig.verify|verify} messages.
+ * @param message LoggingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ILoggingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LoggingConfig message, length delimited. Does not implicitly {@link google.container.v1.LoggingConfig.verify|verify} messages.
+ * @param message LoggingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ILoggingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LoggingConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LoggingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.LoggingConfig;
+
+ /**
+ * Decodes a LoggingConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LoggingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.LoggingConfig;
+
+ /**
+ * Verifies a LoggingConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LoggingConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LoggingConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.LoggingConfig;
+
+ /**
+ * Creates a plain object from a LoggingConfig message. Also converts values to other types if specified.
+ * @param message LoggingConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.LoggingConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LoggingConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LoggingConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LoggingComponentConfig. */
+ interface ILoggingComponentConfig {
+
+ /** LoggingComponentConfig enableComponents */
+ enableComponents?: (google.container.v1.LoggingComponentConfig.Component[]|null);
+ }
+
+ /** Represents a LoggingComponentConfig. */
+ class LoggingComponentConfig implements ILoggingComponentConfig {
+
+ /**
+ * Constructs a new LoggingComponentConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ILoggingComponentConfig);
+
+ /** LoggingComponentConfig enableComponents. */
+ public enableComponents: google.container.v1.LoggingComponentConfig.Component[];
+
+ /**
+ * Creates a new LoggingComponentConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LoggingComponentConfig instance
+ */
+ public static create(properties?: google.container.v1.ILoggingComponentConfig): google.container.v1.LoggingComponentConfig;
+
+ /**
+ * Encodes the specified LoggingComponentConfig message. Does not implicitly {@link google.container.v1.LoggingComponentConfig.verify|verify} messages.
+ * @param message LoggingComponentConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ILoggingComponentConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LoggingComponentConfig message, length delimited. Does not implicitly {@link google.container.v1.LoggingComponentConfig.verify|verify} messages.
+ * @param message LoggingComponentConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ILoggingComponentConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LoggingComponentConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LoggingComponentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.LoggingComponentConfig;
+
+ /**
+ * Decodes a LoggingComponentConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LoggingComponentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.LoggingComponentConfig;
+
+ /**
+ * Verifies a LoggingComponentConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LoggingComponentConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LoggingComponentConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.LoggingComponentConfig;
+
+ /**
+ * Creates a plain object from a LoggingComponentConfig message. Also converts values to other types if specified.
+ * @param message LoggingComponentConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.LoggingComponentConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LoggingComponentConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LoggingComponentConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace LoggingComponentConfig {
+
+ /** Component enum. */
+ enum Component {
+ COMPONENT_UNSPECIFIED = 0,
+ SYSTEM_COMPONENTS = 1,
+ WORKLOADS = 2,
+ APISERVER = 3,
+ SCHEDULER = 4,
+ CONTROLLER_MANAGER = 5
+ }
+ }
+
+ /** Properties of a MonitoringConfig. */
+ interface IMonitoringConfig {
+
+ /** MonitoringConfig componentConfig */
+ componentConfig?: (google.container.v1.IMonitoringComponentConfig|null);
+
+ /** MonitoringConfig managedPrometheusConfig */
+ managedPrometheusConfig?: (google.container.v1.IManagedPrometheusConfig|null);
+ }
+
+ /** Represents a MonitoringConfig. */
+ class MonitoringConfig implements IMonitoringConfig {
+
+ /**
+ * Constructs a new MonitoringConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMonitoringConfig);
+
+ /** MonitoringConfig componentConfig. */
+ public componentConfig?: (google.container.v1.IMonitoringComponentConfig|null);
+
+ /** MonitoringConfig managedPrometheusConfig. */
+ public managedPrometheusConfig?: (google.container.v1.IManagedPrometheusConfig|null);
+
+ /**
+ * Creates a new MonitoringConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MonitoringConfig instance
+ */
+ public static create(properties?: google.container.v1.IMonitoringConfig): google.container.v1.MonitoringConfig;
+
+ /**
+ * Encodes the specified MonitoringConfig message. Does not implicitly {@link google.container.v1.MonitoringConfig.verify|verify} messages.
+ * @param message MonitoringConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMonitoringConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MonitoringConfig message, length delimited. Does not implicitly {@link google.container.v1.MonitoringConfig.verify|verify} messages.
+ * @param message MonitoringConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMonitoringConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MonitoringConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MonitoringConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MonitoringConfig;
+
+ /**
+ * Decodes a MonitoringConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MonitoringConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MonitoringConfig;
+
+ /**
+ * Verifies a MonitoringConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MonitoringConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MonitoringConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MonitoringConfig;
+
+ /**
+ * Creates a plain object from a MonitoringConfig message. Also converts values to other types if specified.
+ * @param message MonitoringConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MonitoringConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MonitoringConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MonitoringConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodePoolLoggingConfig. */
+ interface INodePoolLoggingConfig {
+
+ /** NodePoolLoggingConfig variantConfig */
+ variantConfig?: (google.container.v1.ILoggingVariantConfig|null);
+ }
+
+ /** Represents a NodePoolLoggingConfig. */
+ class NodePoolLoggingConfig implements INodePoolLoggingConfig {
+
+ /**
+ * Constructs a new NodePoolLoggingConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.INodePoolLoggingConfig);
+
+ /** NodePoolLoggingConfig variantConfig. */
+ public variantConfig?: (google.container.v1.ILoggingVariantConfig|null);
+
+ /**
+ * Creates a new NodePoolLoggingConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodePoolLoggingConfig instance
+ */
+ public static create(properties?: google.container.v1.INodePoolLoggingConfig): google.container.v1.NodePoolLoggingConfig;
+
+ /**
+ * Encodes the specified NodePoolLoggingConfig message. Does not implicitly {@link google.container.v1.NodePoolLoggingConfig.verify|verify} messages.
+ * @param message NodePoolLoggingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.INodePoolLoggingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodePoolLoggingConfig message, length delimited. Does not implicitly {@link google.container.v1.NodePoolLoggingConfig.verify|verify} messages.
+ * @param message NodePoolLoggingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.INodePoolLoggingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodePoolLoggingConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodePoolLoggingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.NodePoolLoggingConfig;
+
+ /**
+ * Decodes a NodePoolLoggingConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodePoolLoggingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.NodePoolLoggingConfig;
+
+ /**
+ * Verifies a NodePoolLoggingConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodePoolLoggingConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodePoolLoggingConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.NodePoolLoggingConfig;
+
+ /**
+ * Creates a plain object from a NodePoolLoggingConfig message. Also converts values to other types if specified.
+ * @param message NodePoolLoggingConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.NodePoolLoggingConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodePoolLoggingConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodePoolLoggingConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a LoggingVariantConfig. */
+ interface ILoggingVariantConfig {
+
+ /** LoggingVariantConfig variant */
+ variant?: (google.container.v1.LoggingVariantConfig.Variant|keyof typeof google.container.v1.LoggingVariantConfig.Variant|null);
+ }
+
+ /** Represents a LoggingVariantConfig. */
+ class LoggingVariantConfig implements ILoggingVariantConfig {
+
+ /**
+ * Constructs a new LoggingVariantConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.ILoggingVariantConfig);
+
+ /** LoggingVariantConfig variant. */
+ public variant: (google.container.v1.LoggingVariantConfig.Variant|keyof typeof google.container.v1.LoggingVariantConfig.Variant);
+
+ /**
+ * Creates a new LoggingVariantConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns LoggingVariantConfig instance
+ */
+ public static create(properties?: google.container.v1.ILoggingVariantConfig): google.container.v1.LoggingVariantConfig;
+
+ /**
+ * Encodes the specified LoggingVariantConfig message. Does not implicitly {@link google.container.v1.LoggingVariantConfig.verify|verify} messages.
+ * @param message LoggingVariantConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.ILoggingVariantConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified LoggingVariantConfig message, length delimited. Does not implicitly {@link google.container.v1.LoggingVariantConfig.verify|verify} messages.
+ * @param message LoggingVariantConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.ILoggingVariantConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a LoggingVariantConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns LoggingVariantConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.LoggingVariantConfig;
+
+ /**
+ * Decodes a LoggingVariantConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns LoggingVariantConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.LoggingVariantConfig;
+
+ /**
+ * Verifies a LoggingVariantConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a LoggingVariantConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns LoggingVariantConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.LoggingVariantConfig;
+
+ /**
+ * Creates a plain object from a LoggingVariantConfig message. Also converts values to other types if specified.
+ * @param message LoggingVariantConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.LoggingVariantConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this LoggingVariantConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for LoggingVariantConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace LoggingVariantConfig {
+
+ /** Variant enum. */
+ enum Variant {
+ VARIANT_UNSPECIFIED = 0,
+ DEFAULT = 1,
+ MAX_THROUGHPUT = 2
+ }
+ }
+
+ /** Properties of a MonitoringComponentConfig. */
+ interface IMonitoringComponentConfig {
+
+ /** MonitoringComponentConfig enableComponents */
+ enableComponents?: (google.container.v1.MonitoringComponentConfig.Component[]|null);
+ }
+
+ /** Represents a MonitoringComponentConfig. */
+ class MonitoringComponentConfig implements IMonitoringComponentConfig {
+
+ /**
+ * Constructs a new MonitoringComponentConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IMonitoringComponentConfig);
+
+ /** MonitoringComponentConfig enableComponents. */
+ public enableComponents: google.container.v1.MonitoringComponentConfig.Component[];
+
+ /**
+ * Creates a new MonitoringComponentConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MonitoringComponentConfig instance
+ */
+ public static create(properties?: google.container.v1.IMonitoringComponentConfig): google.container.v1.MonitoringComponentConfig;
+
+ /**
+ * Encodes the specified MonitoringComponentConfig message. Does not implicitly {@link google.container.v1.MonitoringComponentConfig.verify|verify} messages.
+ * @param message MonitoringComponentConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IMonitoringComponentConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MonitoringComponentConfig message, length delimited. Does not implicitly {@link google.container.v1.MonitoringComponentConfig.verify|verify} messages.
+ * @param message MonitoringComponentConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IMonitoringComponentConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MonitoringComponentConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MonitoringComponentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.MonitoringComponentConfig;
+
+ /**
+ * Decodes a MonitoringComponentConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MonitoringComponentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.MonitoringComponentConfig;
+
+ /**
+ * Verifies a MonitoringComponentConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MonitoringComponentConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MonitoringComponentConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.MonitoringComponentConfig;
+
+ /**
+ * Creates a plain object from a MonitoringComponentConfig message. Also converts values to other types if specified.
+ * @param message MonitoringComponentConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.MonitoringComponentConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MonitoringComponentConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MonitoringComponentConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MonitoringComponentConfig {
+
+ /** Component enum. */
+ enum Component {
+ COMPONENT_UNSPECIFIED = 0,
+ SYSTEM_COMPONENTS = 1,
+ APISERVER = 3,
+ SCHEDULER = 4,
+ CONTROLLER_MANAGER = 5
+ }
+ }
+
+ /** DatapathProvider enum. */
+ enum DatapathProvider {
+ DATAPATH_PROVIDER_UNSPECIFIED = 0,
+ LEGACY_DATAPATH = 1,
+ ADVANCED_DATAPATH = 2
+ }
+
+ /** NodePoolUpdateStrategy enum. */
+ enum NodePoolUpdateStrategy {
+ NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0,
+ BLUE_GREEN = 2,
+ SURGE = 3
+ }
+
+ /** Properties of a ManagedPrometheusConfig. */
+ interface IManagedPrometheusConfig {
+
+ /** ManagedPrometheusConfig enabled */
+ enabled?: (boolean|null);
+ }
+
+ /** Represents a ManagedPrometheusConfig. */
+ class ManagedPrometheusConfig implements IManagedPrometheusConfig {
+
+ /**
+ * Constructs a new ManagedPrometheusConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.container.v1.IManagedPrometheusConfig);
+
+ /** ManagedPrometheusConfig enabled. */
+ public enabled: boolean;
+
+ /**
+ * Creates a new ManagedPrometheusConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ManagedPrometheusConfig instance
+ */
+ public static create(properties?: google.container.v1.IManagedPrometheusConfig): google.container.v1.ManagedPrometheusConfig;
+
+ /**
+ * Encodes the specified ManagedPrometheusConfig message. Does not implicitly {@link google.container.v1.ManagedPrometheusConfig.verify|verify} messages.
+ * @param message ManagedPrometheusConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.container.v1.IManagedPrometheusConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ManagedPrometheusConfig message, length delimited. Does not implicitly {@link google.container.v1.ManagedPrometheusConfig.verify|verify} messages.
+ * @param message ManagedPrometheusConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.container.v1.IManagedPrometheusConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ManagedPrometheusConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ManagedPrometheusConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.container.v1.ManagedPrometheusConfig;
+
+ /**
+ * Decodes a ManagedPrometheusConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ManagedPrometheusConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.container.v1.ManagedPrometheusConfig;
+
+ /**
+ * Verifies a ManagedPrometheusConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ManagedPrometheusConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ManagedPrometheusConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.container.v1.ManagedPrometheusConfig;
+
+ /**
+ * Creates a plain object from a ManagedPrometheusConfig message. Also converts values to other types if specified.
+ * @param message ManagedPrometheusConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.container.v1.ManagedPrometheusConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ManagedPrometheusConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ManagedPrometheusConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** StackType enum. */
+ enum StackType {
+ STACK_TYPE_UNSPECIFIED = 0,
+ IPV4 = 1,
+ IPV4_IPV6 = 2
+ }
+
+ /** IPv6AccessType enum. */
+ enum IPv6AccessType {
+ IPV6_ACCESS_TYPE_UNSPECIFIED = 0,
+ INTERNAL = 1,
+ EXTERNAL = 2
+ }
+ }
+ }
+
+ /** 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 Duration. */
+ interface IDuration {
+
+ /** Duration seconds */
+ seconds?: (number|Long|string|null);
+
+ /** Duration nanos */
+ nanos?: (number|null);
+ }
+
+ /** Represents a Duration. */
+ class Duration implements IDuration {
+
+ /**
+ * Constructs a new Duration.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDuration);
+
+ /** Duration seconds. */
+ public seconds: (number|Long|string);
+
+ /** Duration nanos. */
+ public nanos: number;
+
+ /**
+ * Creates a new Duration instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Duration instance
+ */
+ public static create(properties?: google.protobuf.IDuration): google.protobuf.Duration;
+
+ /**
+ * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
+ * @param message Duration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
+ * @param message Duration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Duration message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Duration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Duration;
+
+ /**
+ * Decodes a Duration message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Duration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Duration;
+
+ /**
+ * Verifies a Duration message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Duration message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Duration
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Duration;
+
+ /**
+ * Creates a plain object from a Duration message. Also converts values to other types if specified.
+ * @param message Duration
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Duration, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Duration to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Duration
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of 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;
+ }
+
+ /** 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 DoubleValue. */
+ interface IDoubleValue {
+
+ /** DoubleValue value */
+ value?: (number|null);
+ }
+
+ /** Represents a DoubleValue. */
+ class DoubleValue implements IDoubleValue {
+
+ /**
+ * Constructs a new DoubleValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDoubleValue);
+
+ /** DoubleValue value. */
+ public value: number;
+
+ /**
+ * Creates a new DoubleValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DoubleValue instance
+ */
+ public static create(properties?: google.protobuf.IDoubleValue): google.protobuf.DoubleValue;
+
+ /**
+ * Encodes the specified DoubleValue message. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
+ * @param message DoubleValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDoubleValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DoubleValue message, length delimited. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
+ * @param message DoubleValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDoubleValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DoubleValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DoubleValue
+ * @throws {Error} If the payload is not 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.DoubleValue;
+
+ /**
+ * Decodes a DoubleValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DoubleValue
+ * @throws {Error} If the payload 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.DoubleValue;
+
+ /**
+ * Verifies a DoubleValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DoubleValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DoubleValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DoubleValue;
+
+ /**
+ * Creates a plain object from a DoubleValue message. Also converts values to other types if specified.
+ * @param message DoubleValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DoubleValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DoubleValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DoubleValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FloatValue. */
+ interface IFloatValue {
+
+ /** FloatValue value */
+ value?: (number|null);
+ }
+
+ /** Represents a FloatValue. */
+ class FloatValue implements IFloatValue {
+
+ /**
+ * Constructs a new FloatValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFloatValue);
+
+ /** FloatValue value. */
+ public value: number;
+
+ /**
+ * Creates a new FloatValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FloatValue instance
+ */
+ public static create(properties?: google.protobuf.IFloatValue): google.protobuf.FloatValue;
+
+ /**
+ * Encodes the specified FloatValue message. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
+ * @param message FloatValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFloatValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FloatValue message, length delimited. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
+ * @param message FloatValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFloatValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FloatValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FloatValue
+ * @throws {Error} If the payload is not 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.FloatValue;
+
+ /**
+ * Decodes a FloatValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FloatValue
+ * @throws {Error} If the payload 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.FloatValue;
+
+ /**
+ * Verifies a FloatValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FloatValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FloatValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FloatValue;
+
+ /**
+ * Creates a plain object from a FloatValue message. Also converts values to other types if specified.
+ * @param message FloatValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FloatValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FloatValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FloatValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Int64Value. */
+ interface IInt64Value {
+
+ /** Int64Value value */
+ value?: (number|Long|string|null);
+ }
+
+ /** Represents an Int64Value. */
+ class Int64Value implements IInt64Value {
+
+ /**
+ * Constructs a new Int64Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IInt64Value);
+
+ /** Int64Value value. */
+ public value: (number|Long|string);
+
+ /**
+ * Creates a new Int64Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Int64Value instance
+ */
+ public static create(properties?: google.protobuf.IInt64Value): google.protobuf.Int64Value;
+
+ /**
+ * Encodes the specified Int64Value message. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
+ * @param message Int64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Int64Value message, length delimited. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
+ * @param message Int64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Int64Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Int64Value
+ * @throws {Error} If the payload is not 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.Int64Value;
+
+ /**
+ * Decodes an Int64Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Int64Value
+ * @throws {Error} If the payload 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.Int64Value;
+
+ /**
+ * Verifies an Int64Value message.
+ * @param message Plain 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 Int64Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Int64Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Int64Value;
+
+ /**
+ * Creates a plain object from an Int64Value message. Also converts values to other types if specified.
+ * @param message Int64Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Int64Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Int64Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Int64Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UInt64Value. */
+ interface IUInt64Value {
+
+ /** UInt64Value value */
+ value?: (number|Long|string|null);
+ }
+
+ /** Represents a UInt64Value. */
+ class UInt64Value implements IUInt64Value {
+
+ /**
+ * Constructs a new UInt64Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUInt64Value);
+
+ /** UInt64Value value. */
+ public value: (number|Long|string);
+
+ /**
+ * Creates a new UInt64Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UInt64Value instance
+ */
+ public static create(properties?: google.protobuf.IUInt64Value): google.protobuf.UInt64Value;
+
+ /**
+ * Encodes the specified UInt64Value message. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
+ * @param message UInt64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UInt64Value message, length delimited. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
+ * @param message UInt64Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUInt64Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UInt64Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UInt64Value
+ * @throws {Error} If the payload is not 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.UInt64Value;
+
+ /**
+ * Decodes a UInt64Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UInt64Value
+ * @throws {Error} If the payload 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.UInt64Value;
+
+ /**
+ * Verifies a UInt64Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UInt64Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UInt64Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UInt64Value;
+
+ /**
+ * Creates a plain object from a UInt64Value message. Also converts values to other types if specified.
+ * @param message UInt64Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UInt64Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UInt64Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UInt64Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Int32Value. */
+ interface IInt32Value {
+
+ /** Int32Value value */
+ value?: (number|null);
+ }
+
+ /** Represents an Int32Value. */
+ class Int32Value implements IInt32Value {
+
+ /**
+ * Constructs a new Int32Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IInt32Value);
+
+ /** Int32Value value. */
+ public value: number;
+
+ /**
+ * Creates a new Int32Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Int32Value instance
+ */
+ public static create(properties?: google.protobuf.IInt32Value): google.protobuf.Int32Value;
+
+ /**
+ * Encodes the specified Int32Value message. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
+ * @param message Int32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Int32Value message, length delimited. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
+ * @param message Int32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Int32Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Int32Value
+ * @throws {Error} If the payload is not 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.Int32Value;
+
+ /**
+ * Decodes an Int32Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Int32Value
+ * @throws {Error} If the payload 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.Int32Value;
+
+ /**
+ * Verifies an Int32Value message.
+ * @param message Plain 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 Int32Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Int32Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Int32Value;
+
+ /**
+ * Creates a plain object from an Int32Value message. Also converts values to other types if specified.
+ * @param message Int32Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Int32Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Int32Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Int32Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a UInt32Value. */
+ interface IUInt32Value {
+
+ /** UInt32Value value */
+ value?: (number|null);
+ }
+
+ /** Represents a UInt32Value. */
+ class UInt32Value implements IUInt32Value {
+
+ /**
+ * Constructs a new UInt32Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUInt32Value);
+
+ /** UInt32Value value. */
+ public value: number;
+
+ /**
+ * Creates a new UInt32Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UInt32Value instance
+ */
+ public static create(properties?: google.protobuf.IUInt32Value): google.protobuf.UInt32Value;
+
+ /**
+ * Encodes the specified UInt32Value message. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
+ * @param message UInt32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UInt32Value message, length delimited. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
+ * @param message UInt32Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUInt32Value, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a UInt32Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UInt32Value
+ * @throws {Error} If the payload is not 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.UInt32Value;
+
+ /**
+ * Decodes a UInt32Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UInt32Value
+ * @throws {Error} If the payload 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.UInt32Value;
+
+ /**
+ * Verifies a UInt32Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a UInt32Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UInt32Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UInt32Value;
+
+ /**
+ * Creates a plain object from a UInt32Value message. Also converts values to other types if specified.
+ * @param message UInt32Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UInt32Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UInt32Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UInt32Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BoolValue. */
+ interface IBoolValue {
+
+ /** BoolValue value */
+ value?: (boolean|null);
+ }
+
+ /** Represents a BoolValue. */
+ class BoolValue implements IBoolValue {
+
+ /**
+ * Constructs a new BoolValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IBoolValue);
+
+ /** BoolValue value. */
+ public value: boolean;
+
+ /**
+ * Creates a new BoolValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BoolValue instance
+ */
+ public static create(properties?: google.protobuf.IBoolValue): google.protobuf.BoolValue;
+
+ /**
+ * Encodes the specified BoolValue message. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
+ * @param message BoolValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IBoolValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BoolValue message, length delimited. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
+ * @param message BoolValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IBoolValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BoolValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BoolValue
+ * @throws {Error} If the payload is not 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.BoolValue;
+
+ /**
+ * Decodes a BoolValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BoolValue
+ * @throws {Error} If the payload 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.BoolValue;
+
+ /**
+ * Verifies a BoolValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BoolValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BoolValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.BoolValue;
+
+ /**
+ * Creates a plain object from a BoolValue message. Also converts values to other types if specified.
+ * @param message BoolValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.BoolValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BoolValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BoolValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a StringValue. */
+ interface IStringValue {
+
+ /** StringValue value */
+ value?: (string|null);
+ }
+
+ /** Represents a StringValue. */
+ class StringValue implements IStringValue {
+
+ /**
+ * Constructs a new StringValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IStringValue);
+
+ /** StringValue value. */
+ public value: string;
+
+ /**
+ * Creates a new StringValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StringValue instance
+ */
+ public static create(properties?: google.protobuf.IStringValue): google.protobuf.StringValue;
+
+ /**
+ * Encodes the specified StringValue message. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
+ * @param message StringValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IStringValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StringValue message, length delimited. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
+ * @param message StringValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IStringValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StringValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StringValue
+ * @throws {Error} If the payload is not 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.StringValue;
+
+ /**
+ * Decodes a StringValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StringValue
+ * @throws {Error} If the payload 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.StringValue;
+
+ /**
+ * Verifies a StringValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StringValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StringValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.StringValue;
+
+ /**
+ * Creates a plain object from a StringValue message. Also converts values to other types if specified.
+ * @param message StringValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.StringValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StringValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StringValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BytesValue. */
+ interface IBytesValue {
+
+ /** BytesValue value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents a BytesValue. */
+ class BytesValue implements IBytesValue {
+
+ /**
+ * Constructs a new BytesValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IBytesValue);
+
+ /** BytesValue value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new BytesValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BytesValue instance
+ */
+ public static create(properties?: google.protobuf.IBytesValue): google.protobuf.BytesValue;
+
+ /**
+ * Encodes the specified BytesValue message. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
+ * @param message BytesValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IBytesValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BytesValue message, length delimited. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
+ * @param message BytesValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IBytesValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BytesValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BytesValue
+ * @throws {Error} If the payload is not 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.BytesValue;
+
+ /**
+ * Decodes a BytesValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BytesValue
+ * @throws {Error} If the payload 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.BytesValue;
+
+ /**
+ * Verifies a BytesValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BytesValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BytesValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.BytesValue;
+
+ /**
+ * Creates a plain object from a BytesValue message. Also converts values to other types if specified.
+ * @param message BytesValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.BytesValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BytesValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BytesValue
+ * @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;
+ }
+ }
+
+ /** Namespace rpc. */
+ namespace rpc {
+
+ /** Code enum. */
+ enum Code {
+ OK = 0,
+ CANCELLED = 1,
+ UNKNOWN = 2,
+ INVALID_ARGUMENT = 3,
+ DEADLINE_EXCEEDED = 4,
+ NOT_FOUND = 5,
+ ALREADY_EXISTS = 6,
+ PERMISSION_DENIED = 7,
+ UNAUTHENTICATED = 16,
+ RESOURCE_EXHAUSTED = 8,
+ FAILED_PRECONDITION = 9,
+ ABORTED = 10,
+ OUT_OF_RANGE = 11,
+ UNIMPLEMENTED = 12,
+ INTERNAL = 13,
+ UNAVAILABLE = 14,
+ DATA_LOSS = 15
+ }
+
+ /** 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-container/protos/protos.js b/packages/google-container/protos/protos.js
new file mode 100644
index 00000000000..02fcf740dbe
--- /dev/null
+++ b/packages/google-container/protos/protos.js
@@ -0,0 +1,60347 @@
+// 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_container_protos || ($protobuf.roots._google_cloud_container_protos = {});
+
+ $root.google = (function() {
+
+ /**
+ * Namespace google.
+ * @exports google
+ * @namespace
+ */
+ var google = {};
+
+ google.container = (function() {
+
+ /**
+ * Namespace container.
+ * @memberof google
+ * @namespace
+ */
+ var container = {};
+
+ container.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof google.container
+ * @namespace
+ */
+ var v1 = {};
+
+ v1.ClusterManager = (function() {
+
+ /**
+ * Constructs a new ClusterManager service.
+ * @memberof google.container.v1
+ * @classdesc Represents a ClusterManager
+ * @extends $protobuf.rpc.Service
+ * @constructor
+ * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
+ * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
+ * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
+ */
+ function ClusterManager(rpcImpl, requestDelimited, responseDelimited) {
+ $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
+ }
+
+ (ClusterManager.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = ClusterManager;
+
+ /**
+ * Creates new ClusterManager service using the specified rpc implementation.
+ * @function create
+ * @memberof google.container.v1.ClusterManager
+ * @static
+ * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
+ * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
+ * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
+ * @returns {ClusterManager} RPC service. Useful where requests and/or responses are streamed.
+ */
+ ClusterManager.create = function create(rpcImpl, requestDelimited, responseDelimited) {
+ return new this(rpcImpl, requestDelimited, responseDelimited);
+ };
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listClusters}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef ListClustersCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.ListClustersResponse} [response] ListClustersResponse
+ */
+
+ /**
+ * Calls ListClusters.
+ * @function listClusters
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListClustersRequest} request ListClustersRequest message or plain object
+ * @param {google.container.v1.ClusterManager.ListClustersCallback} callback Node-style callback called with the error, if any, and ListClustersResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.listClusters = function listClusters(request, callback) {
+ return this.rpcCall(listClusters, $root.google.container.v1.ListClustersRequest, $root.google.container.v1.ListClustersResponse, request, callback);
+ }, "name", { value: "ListClusters" });
+
+ /**
+ * Calls ListClusters.
+ * @function listClusters
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListClustersRequest} request ListClustersRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getCluster}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef GetClusterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Cluster} [response] Cluster
+ */
+
+ /**
+ * Calls GetCluster.
+ * @function getCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetClusterRequest} request GetClusterRequest message or plain object
+ * @param {google.container.v1.ClusterManager.GetClusterCallback} callback Node-style callback called with the error, if any, and Cluster
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.getCluster = function getCluster(request, callback) {
+ return this.rpcCall(getCluster, $root.google.container.v1.GetClusterRequest, $root.google.container.v1.Cluster, request, callback);
+ }, "name", { value: "GetCluster" });
+
+ /**
+ * Calls GetCluster.
+ * @function getCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetClusterRequest} request GetClusterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|createCluster}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef CreateClusterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateCluster.
+ * @function createCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICreateClusterRequest} request CreateClusterRequest message or plain object
+ * @param {google.container.v1.ClusterManager.CreateClusterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.createCluster = function createCluster(request, callback) {
+ return this.rpcCall(createCluster, $root.google.container.v1.CreateClusterRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "CreateCluster" });
+
+ /**
+ * Calls CreateCluster.
+ * @function createCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICreateClusterRequest} request CreateClusterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|updateCluster}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef UpdateClusterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateCluster.
+ * @function updateCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IUpdateClusterRequest} request UpdateClusterRequest message or plain object
+ * @param {google.container.v1.ClusterManager.UpdateClusterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.updateCluster = function updateCluster(request, callback) {
+ return this.rpcCall(updateCluster, $root.google.container.v1.UpdateClusterRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "UpdateCluster" });
+
+ /**
+ * Calls UpdateCluster.
+ * @function updateCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IUpdateClusterRequest} request UpdateClusterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|updateNodePool}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef UpdateNodePoolCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateNodePool.
+ * @function updateNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IUpdateNodePoolRequest} request UpdateNodePoolRequest message or plain object
+ * @param {google.container.v1.ClusterManager.UpdateNodePoolCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.updateNodePool = function updateNodePool(request, callback) {
+ return this.rpcCall(updateNodePool, $root.google.container.v1.UpdateNodePoolRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "UpdateNodePool" });
+
+ /**
+ * Calls UpdateNodePool.
+ * @function updateNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IUpdateNodePoolRequest} request UpdateNodePoolRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNodePoolAutoscaling}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetNodePoolAutoscalingCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetNodePoolAutoscaling.
+ * @function setNodePoolAutoscaling
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNodePoolAutoscalingRequest} request SetNodePoolAutoscalingRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetNodePoolAutoscalingCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setNodePoolAutoscaling = function setNodePoolAutoscaling(request, callback) {
+ return this.rpcCall(setNodePoolAutoscaling, $root.google.container.v1.SetNodePoolAutoscalingRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetNodePoolAutoscaling" });
+
+ /**
+ * Calls SetNodePoolAutoscaling.
+ * @function setNodePoolAutoscaling
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNodePoolAutoscalingRequest} request SetNodePoolAutoscalingRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLoggingService}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetLoggingServiceCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetLoggingService.
+ * @function setLoggingService
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLoggingServiceRequest} request SetLoggingServiceRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetLoggingServiceCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setLoggingService = function setLoggingService(request, callback) {
+ return this.rpcCall(setLoggingService, $root.google.container.v1.SetLoggingServiceRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetLoggingService" });
+
+ /**
+ * Calls SetLoggingService.
+ * @function setLoggingService
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLoggingServiceRequest} request SetLoggingServiceRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setMonitoringService}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetMonitoringServiceCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetMonitoringService.
+ * @function setMonitoringService
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetMonitoringServiceRequest} request SetMonitoringServiceRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetMonitoringServiceCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setMonitoringService = function setMonitoringService(request, callback) {
+ return this.rpcCall(setMonitoringService, $root.google.container.v1.SetMonitoringServiceRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetMonitoringService" });
+
+ /**
+ * Calls SetMonitoringService.
+ * @function setMonitoringService
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetMonitoringServiceRequest} request SetMonitoringServiceRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setAddonsConfig}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetAddonsConfigCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetAddonsConfig.
+ * @function setAddonsConfig
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetAddonsConfigRequest} request SetAddonsConfigRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetAddonsConfigCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setAddonsConfig = function setAddonsConfig(request, callback) {
+ return this.rpcCall(setAddonsConfig, $root.google.container.v1.SetAddonsConfigRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetAddonsConfig" });
+
+ /**
+ * Calls SetAddonsConfig.
+ * @function setAddonsConfig
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetAddonsConfigRequest} request SetAddonsConfigRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLocations}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetLocationsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetLocations.
+ * @function setLocations
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLocationsRequest} request SetLocationsRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetLocationsCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setLocations = function setLocations(request, callback) {
+ return this.rpcCall(setLocations, $root.google.container.v1.SetLocationsRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetLocations" });
+
+ /**
+ * Calls SetLocations.
+ * @function setLocations
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLocationsRequest} request SetLocationsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|updateMaster}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef UpdateMasterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls UpdateMaster.
+ * @function updateMaster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IUpdateMasterRequest} request UpdateMasterRequest message or plain object
+ * @param {google.container.v1.ClusterManager.UpdateMasterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.updateMaster = function updateMaster(request, callback) {
+ return this.rpcCall(updateMaster, $root.google.container.v1.UpdateMasterRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "UpdateMaster" });
+
+ /**
+ * Calls UpdateMaster.
+ * @function updateMaster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IUpdateMasterRequest} request UpdateMasterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setMasterAuth}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetMasterAuthCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetMasterAuth.
+ * @function setMasterAuth
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetMasterAuthRequest} request SetMasterAuthRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetMasterAuthCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setMasterAuth = function setMasterAuth(request, callback) {
+ return this.rpcCall(setMasterAuth, $root.google.container.v1.SetMasterAuthRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetMasterAuth" });
+
+ /**
+ * Calls SetMasterAuth.
+ * @function setMasterAuth
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetMasterAuthRequest} request SetMasterAuthRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|deleteCluster}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef DeleteClusterCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteCluster.
+ * @function deleteCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IDeleteClusterRequest} request DeleteClusterRequest message or plain object
+ * @param {google.container.v1.ClusterManager.DeleteClusterCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.deleteCluster = function deleteCluster(request, callback) {
+ return this.rpcCall(deleteCluster, $root.google.container.v1.DeleteClusterRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "DeleteCluster" });
+
+ /**
+ * Calls DeleteCluster.
+ * @function deleteCluster
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IDeleteClusterRequest} request DeleteClusterRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listOperations}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef ListOperationsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.ListOperationsResponse} [response] ListOperationsResponse
+ */
+
+ /**
+ * Calls ListOperations.
+ * @function listOperations
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListOperationsRequest} request ListOperationsRequest message or plain object
+ * @param {google.container.v1.ClusterManager.ListOperationsCallback} callback Node-style callback called with the error, if any, and ListOperationsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.listOperations = function listOperations(request, callback) {
+ return this.rpcCall(listOperations, $root.google.container.v1.ListOperationsRequest, $root.google.container.v1.ListOperationsResponse, request, callback);
+ }, "name", { value: "ListOperations" });
+
+ /**
+ * Calls ListOperations.
+ * @function listOperations
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListOperationsRequest} request ListOperationsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getOperation}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef GetOperationCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls GetOperation.
+ * @function getOperation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetOperationRequest} request GetOperationRequest message or plain object
+ * @param {google.container.v1.ClusterManager.GetOperationCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.getOperation = function getOperation(request, callback) {
+ return this.rpcCall(getOperation, $root.google.container.v1.GetOperationRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "GetOperation" });
+
+ /**
+ * Calls GetOperation.
+ * @function getOperation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetOperationRequest} request GetOperationRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|cancelOperation}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef CancelOperationCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.protobuf.Empty} [response] Empty
+ */
+
+ /**
+ * Calls CancelOperation.
+ * @function cancelOperation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICancelOperationRequest} request CancelOperationRequest message or plain object
+ * @param {google.container.v1.ClusterManager.CancelOperationCallback} callback Node-style callback called with the error, if any, and Empty
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.cancelOperation = function cancelOperation(request, callback) {
+ return this.rpcCall(cancelOperation, $root.google.container.v1.CancelOperationRequest, $root.google.protobuf.Empty, request, callback);
+ }, "name", { value: "CancelOperation" });
+
+ /**
+ * Calls CancelOperation.
+ * @function cancelOperation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICancelOperationRequest} request CancelOperationRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getServerConfig}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef GetServerConfigCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.ServerConfig} [response] ServerConfig
+ */
+
+ /**
+ * Calls GetServerConfig.
+ * @function getServerConfig
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetServerConfigRequest} request GetServerConfigRequest message or plain object
+ * @param {google.container.v1.ClusterManager.GetServerConfigCallback} callback Node-style callback called with the error, if any, and ServerConfig
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.getServerConfig = function getServerConfig(request, callback) {
+ return this.rpcCall(getServerConfig, $root.google.container.v1.GetServerConfigRequest, $root.google.container.v1.ServerConfig, request, callback);
+ }, "name", { value: "GetServerConfig" });
+
+ /**
+ * Calls GetServerConfig.
+ * @function getServerConfig
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetServerConfigRequest} request GetServerConfigRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getJSONWebKeys}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef GetJSONWebKeysCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.GetJSONWebKeysResponse} [response] GetJSONWebKeysResponse
+ */
+
+ /**
+ * Calls GetJSONWebKeys.
+ * @function getJSONWebKeys
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetJSONWebKeysRequest} request GetJSONWebKeysRequest message or plain object
+ * @param {google.container.v1.ClusterManager.GetJSONWebKeysCallback} callback Node-style callback called with the error, if any, and GetJSONWebKeysResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.getJSONWebKeys = function getJSONWebKeys(request, callback) {
+ return this.rpcCall(getJSONWebKeys, $root.google.container.v1.GetJSONWebKeysRequest, $root.google.container.v1.GetJSONWebKeysResponse, request, callback);
+ }, "name", { value: "GetJSONWebKeys" });
+
+ /**
+ * Calls GetJSONWebKeys.
+ * @function getJSONWebKeys
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetJSONWebKeysRequest} request GetJSONWebKeysRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listNodePools}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef ListNodePoolsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.ListNodePoolsResponse} [response] ListNodePoolsResponse
+ */
+
+ /**
+ * Calls ListNodePools.
+ * @function listNodePools
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListNodePoolsRequest} request ListNodePoolsRequest message or plain object
+ * @param {google.container.v1.ClusterManager.ListNodePoolsCallback} callback Node-style callback called with the error, if any, and ListNodePoolsResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.listNodePools = function listNodePools(request, callback) {
+ return this.rpcCall(listNodePools, $root.google.container.v1.ListNodePoolsRequest, $root.google.container.v1.ListNodePoolsResponse, request, callback);
+ }, "name", { value: "ListNodePools" });
+
+ /**
+ * Calls ListNodePools.
+ * @function listNodePools
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListNodePoolsRequest} request ListNodePoolsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|getNodePool}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef GetNodePoolCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.NodePool} [response] NodePool
+ */
+
+ /**
+ * Calls GetNodePool.
+ * @function getNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetNodePoolRequest} request GetNodePoolRequest message or plain object
+ * @param {google.container.v1.ClusterManager.GetNodePoolCallback} callback Node-style callback called with the error, if any, and NodePool
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.getNodePool = function getNodePool(request, callback) {
+ return this.rpcCall(getNodePool, $root.google.container.v1.GetNodePoolRequest, $root.google.container.v1.NodePool, request, callback);
+ }, "name", { value: "GetNodePool" });
+
+ /**
+ * Calls GetNodePool.
+ * @function getNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IGetNodePoolRequest} request GetNodePoolRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|createNodePool}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef CreateNodePoolCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CreateNodePool.
+ * @function createNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICreateNodePoolRequest} request CreateNodePoolRequest message or plain object
+ * @param {google.container.v1.ClusterManager.CreateNodePoolCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.createNodePool = function createNodePool(request, callback) {
+ return this.rpcCall(createNodePool, $root.google.container.v1.CreateNodePoolRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "CreateNodePool" });
+
+ /**
+ * Calls CreateNodePool.
+ * @function createNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICreateNodePoolRequest} request CreateNodePoolRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|deleteNodePool}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef DeleteNodePoolCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls DeleteNodePool.
+ * @function deleteNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IDeleteNodePoolRequest} request DeleteNodePoolRequest message or plain object
+ * @param {google.container.v1.ClusterManager.DeleteNodePoolCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.deleteNodePool = function deleteNodePool(request, callback) {
+ return this.rpcCall(deleteNodePool, $root.google.container.v1.DeleteNodePoolRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "DeleteNodePool" });
+
+ /**
+ * Calls DeleteNodePool.
+ * @function deleteNodePool
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IDeleteNodePoolRequest} request DeleteNodePoolRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|completeNodePoolUpgrade}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef CompleteNodePoolUpgradeCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.protobuf.Empty} [response] Empty
+ */
+
+ /**
+ * Calls CompleteNodePoolUpgrade.
+ * @function completeNodePoolUpgrade
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICompleteNodePoolUpgradeRequest} request CompleteNodePoolUpgradeRequest message or plain object
+ * @param {google.container.v1.ClusterManager.CompleteNodePoolUpgradeCallback} callback Node-style callback called with the error, if any, and Empty
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.completeNodePoolUpgrade = function completeNodePoolUpgrade(request, callback) {
+ return this.rpcCall(completeNodePoolUpgrade, $root.google.container.v1.CompleteNodePoolUpgradeRequest, $root.google.protobuf.Empty, request, callback);
+ }, "name", { value: "CompleteNodePoolUpgrade" });
+
+ /**
+ * Calls CompleteNodePoolUpgrade.
+ * @function completeNodePoolUpgrade
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICompleteNodePoolUpgradeRequest} request CompleteNodePoolUpgradeRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|rollbackNodePoolUpgrade}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef RollbackNodePoolUpgradeCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls RollbackNodePoolUpgrade.
+ * @function rollbackNodePoolUpgrade
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IRollbackNodePoolUpgradeRequest} request RollbackNodePoolUpgradeRequest message or plain object
+ * @param {google.container.v1.ClusterManager.RollbackNodePoolUpgradeCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.rollbackNodePoolUpgrade = function rollbackNodePoolUpgrade(request, callback) {
+ return this.rpcCall(rollbackNodePoolUpgrade, $root.google.container.v1.RollbackNodePoolUpgradeRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "RollbackNodePoolUpgrade" });
+
+ /**
+ * Calls RollbackNodePoolUpgrade.
+ * @function rollbackNodePoolUpgrade
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IRollbackNodePoolUpgradeRequest} request RollbackNodePoolUpgradeRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNodePoolManagement}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetNodePoolManagementCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetNodePoolManagement.
+ * @function setNodePoolManagement
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNodePoolManagementRequest} request SetNodePoolManagementRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetNodePoolManagementCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setNodePoolManagement = function setNodePoolManagement(request, callback) {
+ return this.rpcCall(setNodePoolManagement, $root.google.container.v1.SetNodePoolManagementRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetNodePoolManagement" });
+
+ /**
+ * Calls SetNodePoolManagement.
+ * @function setNodePoolManagement
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNodePoolManagementRequest} request SetNodePoolManagementRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLabels}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetLabelsCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetLabels.
+ * @function setLabels
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLabelsRequest} request SetLabelsRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetLabelsCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setLabels = function setLabels(request, callback) {
+ return this.rpcCall(setLabels, $root.google.container.v1.SetLabelsRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetLabels" });
+
+ /**
+ * Calls SetLabels.
+ * @function setLabels
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLabelsRequest} request SetLabelsRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setLegacyAbac}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetLegacyAbacCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetLegacyAbac.
+ * @function setLegacyAbac
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLegacyAbacRequest} request SetLegacyAbacRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetLegacyAbacCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setLegacyAbac = function setLegacyAbac(request, callback) {
+ return this.rpcCall(setLegacyAbac, $root.google.container.v1.SetLegacyAbacRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetLegacyAbac" });
+
+ /**
+ * Calls SetLegacyAbac.
+ * @function setLegacyAbac
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetLegacyAbacRequest} request SetLegacyAbacRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|startIPRotation}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef StartIPRotationCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls StartIPRotation.
+ * @function startIPRotation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IStartIPRotationRequest} request StartIPRotationRequest message or plain object
+ * @param {google.container.v1.ClusterManager.StartIPRotationCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.startIPRotation = function startIPRotation(request, callback) {
+ return this.rpcCall(startIPRotation, $root.google.container.v1.StartIPRotationRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "StartIPRotation" });
+
+ /**
+ * Calls StartIPRotation.
+ * @function startIPRotation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IStartIPRotationRequest} request StartIPRotationRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|completeIPRotation}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef CompleteIPRotationCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls CompleteIPRotation.
+ * @function completeIPRotation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICompleteIPRotationRequest} request CompleteIPRotationRequest message or plain object
+ * @param {google.container.v1.ClusterManager.CompleteIPRotationCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.completeIPRotation = function completeIPRotation(request, callback) {
+ return this.rpcCall(completeIPRotation, $root.google.container.v1.CompleteIPRotationRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "CompleteIPRotation" });
+
+ /**
+ * Calls CompleteIPRotation.
+ * @function completeIPRotation
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ICompleteIPRotationRequest} request CompleteIPRotationRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNodePoolSize}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetNodePoolSizeCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetNodePoolSize.
+ * @function setNodePoolSize
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNodePoolSizeRequest} request SetNodePoolSizeRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetNodePoolSizeCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setNodePoolSize = function setNodePoolSize(request, callback) {
+ return this.rpcCall(setNodePoolSize, $root.google.container.v1.SetNodePoolSizeRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetNodePoolSize" });
+
+ /**
+ * Calls SetNodePoolSize.
+ * @function setNodePoolSize
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNodePoolSizeRequest} request SetNodePoolSizeRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setNetworkPolicy}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetNetworkPolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetNetworkPolicy.
+ * @function setNetworkPolicy
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNetworkPolicyRequest} request SetNetworkPolicyRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetNetworkPolicyCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setNetworkPolicy = function setNetworkPolicy(request, callback) {
+ return this.rpcCall(setNetworkPolicy, $root.google.container.v1.SetNetworkPolicyRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetNetworkPolicy" });
+
+ /**
+ * Calls SetNetworkPolicy.
+ * @function setNetworkPolicy
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetNetworkPolicyRequest} request SetNetworkPolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|setMaintenancePolicy}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef SetMaintenancePolicyCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.Operation} [response] Operation
+ */
+
+ /**
+ * Calls SetMaintenancePolicy.
+ * @function setMaintenancePolicy
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetMaintenancePolicyRequest} request SetMaintenancePolicyRequest message or plain object
+ * @param {google.container.v1.ClusterManager.SetMaintenancePolicyCallback} callback Node-style callback called with the error, if any, and Operation
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.setMaintenancePolicy = function setMaintenancePolicy(request, callback) {
+ return this.rpcCall(setMaintenancePolicy, $root.google.container.v1.SetMaintenancePolicyRequest, $root.google.container.v1.Operation, request, callback);
+ }, "name", { value: "SetMaintenancePolicy" });
+
+ /**
+ * Calls SetMaintenancePolicy.
+ * @function setMaintenancePolicy
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.ISetMaintenancePolicyRequest} request SetMaintenancePolicyRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ /**
+ * Callback as used by {@link google.container.v1.ClusterManager|listUsableSubnetworks}.
+ * @memberof google.container.v1.ClusterManager
+ * @typedef ListUsableSubnetworksCallback
+ * @type {function}
+ * @param {Error|null} error Error, if any
+ * @param {google.container.v1.ListUsableSubnetworksResponse} [response] ListUsableSubnetworksResponse
+ */
+
+ /**
+ * Calls ListUsableSubnetworks.
+ * @function listUsableSubnetworks
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListUsableSubnetworksRequest} request ListUsableSubnetworksRequest message or plain object
+ * @param {google.container.v1.ClusterManager.ListUsableSubnetworksCallback} callback Node-style callback called with the error, if any, and ListUsableSubnetworksResponse
+ * @returns {undefined}
+ * @variation 1
+ */
+ Object.defineProperty(ClusterManager.prototype.listUsableSubnetworks = function listUsableSubnetworks(request, callback) {
+ return this.rpcCall(listUsableSubnetworks, $root.google.container.v1.ListUsableSubnetworksRequest, $root.google.container.v1.ListUsableSubnetworksResponse, request, callback);
+ }, "name", { value: "ListUsableSubnetworks" });
+
+ /**
+ * Calls ListUsableSubnetworks.
+ * @function listUsableSubnetworks
+ * @memberof google.container.v1.ClusterManager
+ * @instance
+ * @param {google.container.v1.IListUsableSubnetworksRequest} request ListUsableSubnetworksRequest message or plain object
+ * @returns {Promise} Promise
+ * @variation 2
+ */
+
+ return ClusterManager;
+ })();
+
+ v1.LinuxNodeConfig = (function() {
+
+ /**
+ * Properties of a LinuxNodeConfig.
+ * @memberof google.container.v1
+ * @interface ILinuxNodeConfig
+ * @property {Object.|null} [sysctls] LinuxNodeConfig sysctls
+ * @property {google.container.v1.LinuxNodeConfig.CgroupMode|null} [cgroupMode] LinuxNodeConfig cgroupMode
+ */
+
+ /**
+ * Constructs a new LinuxNodeConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a LinuxNodeConfig.
+ * @implements ILinuxNodeConfig
+ * @constructor
+ * @param {google.container.v1.ILinuxNodeConfig=} [properties] Properties to set
+ */
+ function LinuxNodeConfig(properties) {
+ this.sysctls = {};
+ 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]];
+ }
+
+ /**
+ * LinuxNodeConfig sysctls.
+ * @member {Object.} sysctls
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @instance
+ */
+ LinuxNodeConfig.prototype.sysctls = $util.emptyObject;
+
+ /**
+ * LinuxNodeConfig cgroupMode.
+ * @member {google.container.v1.LinuxNodeConfig.CgroupMode} cgroupMode
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @instance
+ */
+ LinuxNodeConfig.prototype.cgroupMode = 0;
+
+ /**
+ * Creates a new LinuxNodeConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {google.container.v1.ILinuxNodeConfig=} [properties] Properties to set
+ * @returns {google.container.v1.LinuxNodeConfig} LinuxNodeConfig instance
+ */
+ LinuxNodeConfig.create = function create(properties) {
+ return new LinuxNodeConfig(properties);
+ };
+
+ /**
+ * Encodes the specified LinuxNodeConfig message. Does not implicitly {@link google.container.v1.LinuxNodeConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {google.container.v1.ILinuxNodeConfig} message LinuxNodeConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LinuxNodeConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.sysctls != null && Object.hasOwnProperty.call(message, "sysctls"))
+ for (var keys = Object.keys(message.sysctls), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.sysctls[keys[i]]).ldelim();
+ if (message.cgroupMode != null && Object.hasOwnProperty.call(message, "cgroupMode"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.cgroupMode);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified LinuxNodeConfig message, length delimited. Does not implicitly {@link google.container.v1.LinuxNodeConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {google.container.v1.ILinuxNodeConfig} message LinuxNodeConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LinuxNodeConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a LinuxNodeConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.LinuxNodeConfig} LinuxNodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LinuxNodeConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.LinuxNodeConfig(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (message.sysctls === $util.emptyObject)
+ message.sysctls = {};
+ 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.sysctls[key] = value;
+ break;
+ }
+ case 2: {
+ message.cgroupMode = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a LinuxNodeConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.LinuxNodeConfig} LinuxNodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LinuxNodeConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a LinuxNodeConfig message.
+ * @function verify
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ LinuxNodeConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.sysctls != null && message.hasOwnProperty("sysctls")) {
+ if (!$util.isObject(message.sysctls))
+ return "sysctls: object expected";
+ var key = Object.keys(message.sysctls);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.sysctls[key[i]]))
+ return "sysctls: string{k:string} expected";
+ }
+ if (message.cgroupMode != null && message.hasOwnProperty("cgroupMode"))
+ switch (message.cgroupMode) {
+ default:
+ return "cgroupMode: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a LinuxNodeConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.LinuxNodeConfig} LinuxNodeConfig
+ */
+ LinuxNodeConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.LinuxNodeConfig)
+ return object;
+ var message = new $root.google.container.v1.LinuxNodeConfig();
+ if (object.sysctls) {
+ if (typeof object.sysctls !== "object")
+ throw TypeError(".google.container.v1.LinuxNodeConfig.sysctls: object expected");
+ message.sysctls = {};
+ for (var keys = Object.keys(object.sysctls), i = 0; i < keys.length; ++i)
+ message.sysctls[keys[i]] = String(object.sysctls[keys[i]]);
+ }
+ switch (object.cgroupMode) {
+ default:
+ if (typeof object.cgroupMode === "number") {
+ message.cgroupMode = object.cgroupMode;
+ break;
+ }
+ break;
+ case "CGROUP_MODE_UNSPECIFIED":
+ case 0:
+ message.cgroupMode = 0;
+ break;
+ case "CGROUP_MODE_V1":
+ case 1:
+ message.cgroupMode = 1;
+ break;
+ case "CGROUP_MODE_V2":
+ case 2:
+ message.cgroupMode = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a LinuxNodeConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {google.container.v1.LinuxNodeConfig} message LinuxNodeConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ LinuxNodeConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.sysctls = {};
+ if (options.defaults)
+ object.cgroupMode = options.enums === String ? "CGROUP_MODE_UNSPECIFIED" : 0;
+ var keys2;
+ if (message.sysctls && (keys2 = Object.keys(message.sysctls)).length) {
+ object.sysctls = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.sysctls[keys2[j]] = message.sysctls[keys2[j]];
+ }
+ if (message.cgroupMode != null && message.hasOwnProperty("cgroupMode"))
+ object.cgroupMode = options.enums === String ? $root.google.container.v1.LinuxNodeConfig.CgroupMode[message.cgroupMode] === undefined ? message.cgroupMode : $root.google.container.v1.LinuxNodeConfig.CgroupMode[message.cgroupMode] : message.cgroupMode;
+ return object;
+ };
+
+ /**
+ * Converts this LinuxNodeConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ LinuxNodeConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for LinuxNodeConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.LinuxNodeConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ LinuxNodeConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.LinuxNodeConfig";
+ };
+
+ /**
+ * CgroupMode enum.
+ * @name google.container.v1.LinuxNodeConfig.CgroupMode
+ * @enum {number}
+ * @property {number} CGROUP_MODE_UNSPECIFIED=0 CGROUP_MODE_UNSPECIFIED value
+ * @property {number} CGROUP_MODE_V1=1 CGROUP_MODE_V1 value
+ * @property {number} CGROUP_MODE_V2=2 CGROUP_MODE_V2 value
+ */
+ LinuxNodeConfig.CgroupMode = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "CGROUP_MODE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "CGROUP_MODE_V1"] = 1;
+ values[valuesById[2] = "CGROUP_MODE_V2"] = 2;
+ return values;
+ })();
+
+ return LinuxNodeConfig;
+ })();
+
+ v1.NodeKubeletConfig = (function() {
+
+ /**
+ * Properties of a NodeKubeletConfig.
+ * @memberof google.container.v1
+ * @interface INodeKubeletConfig
+ * @property {string|null} [cpuManagerPolicy] NodeKubeletConfig cpuManagerPolicy
+ * @property {google.protobuf.IBoolValue|null} [cpuCfsQuota] NodeKubeletConfig cpuCfsQuota
+ * @property {string|null} [cpuCfsQuotaPeriod] NodeKubeletConfig cpuCfsQuotaPeriod
+ * @property {number|Long|null} [podPidsLimit] NodeKubeletConfig podPidsLimit
+ */
+
+ /**
+ * Constructs a new NodeKubeletConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a NodeKubeletConfig.
+ * @implements INodeKubeletConfig
+ * @constructor
+ * @param {google.container.v1.INodeKubeletConfig=} [properties] Properties to set
+ */
+ function NodeKubeletConfig(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]];
+ }
+
+ /**
+ * NodeKubeletConfig cpuManagerPolicy.
+ * @member {string} cpuManagerPolicy
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @instance
+ */
+ NodeKubeletConfig.prototype.cpuManagerPolicy = "";
+
+ /**
+ * NodeKubeletConfig cpuCfsQuota.
+ * @member {google.protobuf.IBoolValue|null|undefined} cpuCfsQuota
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @instance
+ */
+ NodeKubeletConfig.prototype.cpuCfsQuota = null;
+
+ /**
+ * NodeKubeletConfig cpuCfsQuotaPeriod.
+ * @member {string} cpuCfsQuotaPeriod
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @instance
+ */
+ NodeKubeletConfig.prototype.cpuCfsQuotaPeriod = "";
+
+ /**
+ * NodeKubeletConfig podPidsLimit.
+ * @member {number|Long} podPidsLimit
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @instance
+ */
+ NodeKubeletConfig.prototype.podPidsLimit = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
+
+ /**
+ * Creates a new NodeKubeletConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {google.container.v1.INodeKubeletConfig=} [properties] Properties to set
+ * @returns {google.container.v1.NodeKubeletConfig} NodeKubeletConfig instance
+ */
+ NodeKubeletConfig.create = function create(properties) {
+ return new NodeKubeletConfig(properties);
+ };
+
+ /**
+ * Encodes the specified NodeKubeletConfig message. Does not implicitly {@link google.container.v1.NodeKubeletConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {google.container.v1.INodeKubeletConfig} message NodeKubeletConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeKubeletConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.cpuManagerPolicy != null && Object.hasOwnProperty.call(message, "cpuManagerPolicy"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.cpuManagerPolicy);
+ if (message.cpuCfsQuota != null && Object.hasOwnProperty.call(message, "cpuCfsQuota"))
+ $root.google.protobuf.BoolValue.encode(message.cpuCfsQuota, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.cpuCfsQuotaPeriod != null && Object.hasOwnProperty.call(message, "cpuCfsQuotaPeriod"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.cpuCfsQuotaPeriod);
+ if (message.podPidsLimit != null && Object.hasOwnProperty.call(message, "podPidsLimit"))
+ writer.uint32(/* id 4, wireType 0 =*/32).int64(message.podPidsLimit);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NodeKubeletConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeKubeletConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {google.container.v1.INodeKubeletConfig} message NodeKubeletConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeKubeletConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NodeKubeletConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeKubeletConfig} NodeKubeletConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeKubeletConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeKubeletConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.cpuManagerPolicy = reader.string();
+ break;
+ }
+ case 2: {
+ message.cpuCfsQuota = $root.google.protobuf.BoolValue.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.cpuCfsQuotaPeriod = reader.string();
+ break;
+ }
+ case 4: {
+ message.podPidsLimit = reader.int64();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NodeKubeletConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeKubeletConfig} NodeKubeletConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeKubeletConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NodeKubeletConfig message.
+ * @function verify
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NodeKubeletConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.cpuManagerPolicy != null && message.hasOwnProperty("cpuManagerPolicy"))
+ if (!$util.isString(message.cpuManagerPolicy))
+ return "cpuManagerPolicy: string expected";
+ if (message.cpuCfsQuota != null && message.hasOwnProperty("cpuCfsQuota")) {
+ var error = $root.google.protobuf.BoolValue.verify(message.cpuCfsQuota);
+ if (error)
+ return "cpuCfsQuota." + error;
+ }
+ if (message.cpuCfsQuotaPeriod != null && message.hasOwnProperty("cpuCfsQuotaPeriod"))
+ if (!$util.isString(message.cpuCfsQuotaPeriod))
+ return "cpuCfsQuotaPeriod: string expected";
+ if (message.podPidsLimit != null && message.hasOwnProperty("podPidsLimit"))
+ if (!$util.isInteger(message.podPidsLimit) && !(message.podPidsLimit && $util.isInteger(message.podPidsLimit.low) && $util.isInteger(message.podPidsLimit.high)))
+ return "podPidsLimit: integer|Long expected";
+ return null;
+ };
+
+ /**
+ * Creates a NodeKubeletConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeKubeletConfig} NodeKubeletConfig
+ */
+ NodeKubeletConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeKubeletConfig)
+ return object;
+ var message = new $root.google.container.v1.NodeKubeletConfig();
+ if (object.cpuManagerPolicy != null)
+ message.cpuManagerPolicy = String(object.cpuManagerPolicy);
+ if (object.cpuCfsQuota != null) {
+ if (typeof object.cpuCfsQuota !== "object")
+ throw TypeError(".google.container.v1.NodeKubeletConfig.cpuCfsQuota: object expected");
+ message.cpuCfsQuota = $root.google.protobuf.BoolValue.fromObject(object.cpuCfsQuota);
+ }
+ if (object.cpuCfsQuotaPeriod != null)
+ message.cpuCfsQuotaPeriod = String(object.cpuCfsQuotaPeriod);
+ if (object.podPidsLimit != null)
+ if ($util.Long)
+ (message.podPidsLimit = $util.Long.fromValue(object.podPidsLimit)).unsigned = false;
+ else if (typeof object.podPidsLimit === "string")
+ message.podPidsLimit = parseInt(object.podPidsLimit, 10);
+ else if (typeof object.podPidsLimit === "number")
+ message.podPidsLimit = object.podPidsLimit;
+ else if (typeof object.podPidsLimit === "object")
+ message.podPidsLimit = new $util.LongBits(object.podPidsLimit.low >>> 0, object.podPidsLimit.high >>> 0).toNumber();
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NodeKubeletConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {google.container.v1.NodeKubeletConfig} message NodeKubeletConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NodeKubeletConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.cpuManagerPolicy = "";
+ object.cpuCfsQuota = null;
+ object.cpuCfsQuotaPeriod = "";
+ if ($util.Long) {
+ var long = new $util.Long(0, 0, false);
+ object.podPidsLimit = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
+ } else
+ object.podPidsLimit = options.longs === String ? "0" : 0;
+ }
+ if (message.cpuManagerPolicy != null && message.hasOwnProperty("cpuManagerPolicy"))
+ object.cpuManagerPolicy = message.cpuManagerPolicy;
+ if (message.cpuCfsQuota != null && message.hasOwnProperty("cpuCfsQuota"))
+ object.cpuCfsQuota = $root.google.protobuf.BoolValue.toObject(message.cpuCfsQuota, options);
+ if (message.cpuCfsQuotaPeriod != null && message.hasOwnProperty("cpuCfsQuotaPeriod"))
+ object.cpuCfsQuotaPeriod = message.cpuCfsQuotaPeriod;
+ if (message.podPidsLimit != null && message.hasOwnProperty("podPidsLimit"))
+ if (typeof message.podPidsLimit === "number")
+ object.podPidsLimit = options.longs === String ? String(message.podPidsLimit) : message.podPidsLimit;
+ else
+ object.podPidsLimit = options.longs === String ? $util.Long.prototype.toString.call(message.podPidsLimit) : options.longs === Number ? new $util.LongBits(message.podPidsLimit.low >>> 0, message.podPidsLimit.high >>> 0).toNumber() : message.podPidsLimit;
+ return object;
+ };
+
+ /**
+ * Converts this NodeKubeletConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NodeKubeletConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NodeKubeletConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeKubeletConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NodeKubeletConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeKubeletConfig";
+ };
+
+ return NodeKubeletConfig;
+ })();
+
+ v1.NodeConfig = (function() {
+
+ /**
+ * Properties of a NodeConfig.
+ * @memberof google.container.v1
+ * @interface INodeConfig
+ * @property {string|null} [machineType] NodeConfig machineType
+ * @property {number|null} [diskSizeGb] NodeConfig diskSizeGb
+ * @property {Array.|null} [oauthScopes] NodeConfig oauthScopes
+ * @property {string|null} [serviceAccount] NodeConfig serviceAccount
+ * @property {Object.|null} [metadata] NodeConfig metadata
+ * @property {string|null} [imageType] NodeConfig imageType
+ * @property {Object.|null} [labels] NodeConfig labels
+ * @property {number|null} [localSsdCount] NodeConfig localSsdCount
+ * @property {Array.|null} [tags] NodeConfig tags
+ * @property {boolean|null} [preemptible] NodeConfig preemptible
+ * @property {Array.|null} [accelerators] NodeConfig accelerators
+ * @property {string|null} [diskType] NodeConfig diskType
+ * @property {string|null} [minCpuPlatform] NodeConfig minCpuPlatform
+ * @property {google.container.v1.IWorkloadMetadataConfig|null} [workloadMetadataConfig] NodeConfig workloadMetadataConfig
+ * @property {Array.|null} [taints] NodeConfig taints
+ * @property {google.container.v1.ISandboxConfig|null} [sandboxConfig] NodeConfig sandboxConfig
+ * @property {string|null} [nodeGroup] NodeConfig nodeGroup
+ * @property {google.container.v1.IReservationAffinity|null} [reservationAffinity] NodeConfig reservationAffinity
+ * @property {google.container.v1.IShieldedInstanceConfig|null} [shieldedInstanceConfig] NodeConfig shieldedInstanceConfig
+ * @property {google.container.v1.ILinuxNodeConfig|null} [linuxNodeConfig] NodeConfig linuxNodeConfig
+ * @property {google.container.v1.INodeKubeletConfig|null} [kubeletConfig] NodeConfig kubeletConfig
+ * @property {string|null} [bootDiskKmsKey] NodeConfig bootDiskKmsKey
+ * @property {google.container.v1.IGcfsConfig|null} [gcfsConfig] NodeConfig gcfsConfig
+ * @property {google.container.v1.IAdvancedMachineFeatures|null} [advancedMachineFeatures] NodeConfig advancedMachineFeatures
+ * @property {google.container.v1.IVirtualNIC|null} [gvnic] NodeConfig gvnic
+ * @property {boolean|null} [spot] NodeConfig spot
+ * @property {google.container.v1.IConfidentialNodes|null} [confidentialNodes] NodeConfig confidentialNodes
+ * @property {Object.|null} [resourceLabels] NodeConfig resourceLabels
+ * @property {google.container.v1.INodePoolLoggingConfig|null} [loggingConfig] NodeConfig loggingConfig
+ */
+
+ /**
+ * Constructs a new NodeConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a NodeConfig.
+ * @implements INodeConfig
+ * @constructor
+ * @param {google.container.v1.INodeConfig=} [properties] Properties to set
+ */
+ function NodeConfig(properties) {
+ this.oauthScopes = [];
+ this.metadata = {};
+ this.labels = {};
+ this.tags = [];
+ this.accelerators = [];
+ this.taints = [];
+ this.resourceLabels = {};
+ 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]];
+ }
+
+ /**
+ * NodeConfig machineType.
+ * @member {string} machineType
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.machineType = "";
+
+ /**
+ * NodeConfig diskSizeGb.
+ * @member {number} diskSizeGb
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.diskSizeGb = 0;
+
+ /**
+ * NodeConfig oauthScopes.
+ * @member {Array.} oauthScopes
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.oauthScopes = $util.emptyArray;
+
+ /**
+ * NodeConfig serviceAccount.
+ * @member {string} serviceAccount
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.serviceAccount = "";
+
+ /**
+ * NodeConfig metadata.
+ * @member {Object.} metadata
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.metadata = $util.emptyObject;
+
+ /**
+ * NodeConfig imageType.
+ * @member {string} imageType
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.imageType = "";
+
+ /**
+ * NodeConfig labels.
+ * @member {Object.} labels
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.labels = $util.emptyObject;
+
+ /**
+ * NodeConfig localSsdCount.
+ * @member {number} localSsdCount
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.localSsdCount = 0;
+
+ /**
+ * NodeConfig tags.
+ * @member {Array.} tags
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.tags = $util.emptyArray;
+
+ /**
+ * NodeConfig preemptible.
+ * @member {boolean} preemptible
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.preemptible = false;
+
+ /**
+ * NodeConfig accelerators.
+ * @member {Array.} accelerators
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.accelerators = $util.emptyArray;
+
+ /**
+ * NodeConfig diskType.
+ * @member {string} diskType
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.diskType = "";
+
+ /**
+ * NodeConfig minCpuPlatform.
+ * @member {string} minCpuPlatform
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.minCpuPlatform = "";
+
+ /**
+ * NodeConfig workloadMetadataConfig.
+ * @member {google.container.v1.IWorkloadMetadataConfig|null|undefined} workloadMetadataConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.workloadMetadataConfig = null;
+
+ /**
+ * NodeConfig taints.
+ * @member {Array.} taints
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.taints = $util.emptyArray;
+
+ /**
+ * NodeConfig sandboxConfig.
+ * @member {google.container.v1.ISandboxConfig|null|undefined} sandboxConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.sandboxConfig = null;
+
+ /**
+ * NodeConfig nodeGroup.
+ * @member {string} nodeGroup
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.nodeGroup = "";
+
+ /**
+ * NodeConfig reservationAffinity.
+ * @member {google.container.v1.IReservationAffinity|null|undefined} reservationAffinity
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.reservationAffinity = null;
+
+ /**
+ * NodeConfig shieldedInstanceConfig.
+ * @member {google.container.v1.IShieldedInstanceConfig|null|undefined} shieldedInstanceConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.shieldedInstanceConfig = null;
+
+ /**
+ * NodeConfig linuxNodeConfig.
+ * @member {google.container.v1.ILinuxNodeConfig|null|undefined} linuxNodeConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.linuxNodeConfig = null;
+
+ /**
+ * NodeConfig kubeletConfig.
+ * @member {google.container.v1.INodeKubeletConfig|null|undefined} kubeletConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.kubeletConfig = null;
+
+ /**
+ * NodeConfig bootDiskKmsKey.
+ * @member {string} bootDiskKmsKey
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.bootDiskKmsKey = "";
+
+ /**
+ * NodeConfig gcfsConfig.
+ * @member {google.container.v1.IGcfsConfig|null|undefined} gcfsConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.gcfsConfig = null;
+
+ /**
+ * NodeConfig advancedMachineFeatures.
+ * @member {google.container.v1.IAdvancedMachineFeatures|null|undefined} advancedMachineFeatures
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.advancedMachineFeatures = null;
+
+ /**
+ * NodeConfig gvnic.
+ * @member {google.container.v1.IVirtualNIC|null|undefined} gvnic
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.gvnic = null;
+
+ /**
+ * NodeConfig spot.
+ * @member {boolean} spot
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.spot = false;
+
+ /**
+ * NodeConfig confidentialNodes.
+ * @member {google.container.v1.IConfidentialNodes|null|undefined} confidentialNodes
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.confidentialNodes = null;
+
+ /**
+ * NodeConfig resourceLabels.
+ * @member {Object.} resourceLabels
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.resourceLabels = $util.emptyObject;
+
+ /**
+ * NodeConfig loggingConfig.
+ * @member {google.container.v1.INodePoolLoggingConfig|null|undefined} loggingConfig
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ */
+ NodeConfig.prototype.loggingConfig = null;
+
+ /**
+ * Creates a new NodeConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {google.container.v1.INodeConfig=} [properties] Properties to set
+ * @returns {google.container.v1.NodeConfig} NodeConfig instance
+ */
+ NodeConfig.create = function create(properties) {
+ return new NodeConfig(properties);
+ };
+
+ /**
+ * Encodes the specified NodeConfig message. Does not implicitly {@link google.container.v1.NodeConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {google.container.v1.INodeConfig} message NodeConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.machineType != null && Object.hasOwnProperty.call(message, "machineType"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.machineType);
+ if (message.diskSizeGb != null && Object.hasOwnProperty.call(message, "diskSizeGb"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.diskSizeGb);
+ if (message.oauthScopes != null && message.oauthScopes.length)
+ for (var i = 0; i < message.oauthScopes.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.oauthScopes[i]);
+ if (message.metadata != null && Object.hasOwnProperty.call(message, "metadata"))
+ for (var keys = Object.keys(message.metadata), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.metadata[keys[i]]).ldelim();
+ if (message.imageType != null && Object.hasOwnProperty.call(message, "imageType"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.imageType);
+ if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
+ for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 6, wireType 2 =*/50).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
+ if (message.localSsdCount != null && Object.hasOwnProperty.call(message, "localSsdCount"))
+ writer.uint32(/* id 7, wireType 0 =*/56).int32(message.localSsdCount);
+ if (message.tags != null && message.tags.length)
+ for (var i = 0; i < message.tags.length; ++i)
+ writer.uint32(/* id 8, wireType 2 =*/66).string(message.tags[i]);
+ if (message.serviceAccount != null && Object.hasOwnProperty.call(message, "serviceAccount"))
+ writer.uint32(/* id 9, wireType 2 =*/74).string(message.serviceAccount);
+ if (message.preemptible != null && Object.hasOwnProperty.call(message, "preemptible"))
+ writer.uint32(/* id 10, wireType 0 =*/80).bool(message.preemptible);
+ if (message.accelerators != null && message.accelerators.length)
+ for (var i = 0; i < message.accelerators.length; ++i)
+ $root.google.container.v1.AcceleratorConfig.encode(message.accelerators[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
+ if (message.diskType != null && Object.hasOwnProperty.call(message, "diskType"))
+ writer.uint32(/* id 12, wireType 2 =*/98).string(message.diskType);
+ if (message.minCpuPlatform != null && Object.hasOwnProperty.call(message, "minCpuPlatform"))
+ writer.uint32(/* id 13, wireType 2 =*/106).string(message.minCpuPlatform);
+ if (message.workloadMetadataConfig != null && Object.hasOwnProperty.call(message, "workloadMetadataConfig"))
+ $root.google.container.v1.WorkloadMetadataConfig.encode(message.workloadMetadataConfig, writer.uint32(/* id 14, wireType 2 =*/114).fork()).ldelim();
+ if (message.taints != null && message.taints.length)
+ for (var i = 0; i < message.taints.length; ++i)
+ $root.google.container.v1.NodeTaint.encode(message.taints[i], writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim();
+ if (message.sandboxConfig != null && Object.hasOwnProperty.call(message, "sandboxConfig"))
+ $root.google.container.v1.SandboxConfig.encode(message.sandboxConfig, writer.uint32(/* id 17, wireType 2 =*/138).fork()).ldelim();
+ if (message.nodeGroup != null && Object.hasOwnProperty.call(message, "nodeGroup"))
+ writer.uint32(/* id 18, wireType 2 =*/146).string(message.nodeGroup);
+ if (message.reservationAffinity != null && Object.hasOwnProperty.call(message, "reservationAffinity"))
+ $root.google.container.v1.ReservationAffinity.encode(message.reservationAffinity, writer.uint32(/* id 19, wireType 2 =*/154).fork()).ldelim();
+ if (message.shieldedInstanceConfig != null && Object.hasOwnProperty.call(message, "shieldedInstanceConfig"))
+ $root.google.container.v1.ShieldedInstanceConfig.encode(message.shieldedInstanceConfig, writer.uint32(/* id 20, wireType 2 =*/162).fork()).ldelim();
+ if (message.linuxNodeConfig != null && Object.hasOwnProperty.call(message, "linuxNodeConfig"))
+ $root.google.container.v1.LinuxNodeConfig.encode(message.linuxNodeConfig, writer.uint32(/* id 21, wireType 2 =*/170).fork()).ldelim();
+ if (message.kubeletConfig != null && Object.hasOwnProperty.call(message, "kubeletConfig"))
+ $root.google.container.v1.NodeKubeletConfig.encode(message.kubeletConfig, writer.uint32(/* id 22, wireType 2 =*/178).fork()).ldelim();
+ if (message.bootDiskKmsKey != null && Object.hasOwnProperty.call(message, "bootDiskKmsKey"))
+ writer.uint32(/* id 23, wireType 2 =*/186).string(message.bootDiskKmsKey);
+ if (message.gcfsConfig != null && Object.hasOwnProperty.call(message, "gcfsConfig"))
+ $root.google.container.v1.GcfsConfig.encode(message.gcfsConfig, writer.uint32(/* id 25, wireType 2 =*/202).fork()).ldelim();
+ if (message.advancedMachineFeatures != null && Object.hasOwnProperty.call(message, "advancedMachineFeatures"))
+ $root.google.container.v1.AdvancedMachineFeatures.encode(message.advancedMachineFeatures, writer.uint32(/* id 26, wireType 2 =*/210).fork()).ldelim();
+ if (message.gvnic != null && Object.hasOwnProperty.call(message, "gvnic"))
+ $root.google.container.v1.VirtualNIC.encode(message.gvnic, writer.uint32(/* id 29, wireType 2 =*/234).fork()).ldelim();
+ if (message.spot != null && Object.hasOwnProperty.call(message, "spot"))
+ writer.uint32(/* id 32, wireType 0 =*/256).bool(message.spot);
+ if (message.confidentialNodes != null && Object.hasOwnProperty.call(message, "confidentialNodes"))
+ $root.google.container.v1.ConfidentialNodes.encode(message.confidentialNodes, writer.uint32(/* id 35, wireType 2 =*/282).fork()).ldelim();
+ if (message.resourceLabels != null && Object.hasOwnProperty.call(message, "resourceLabels"))
+ for (var keys = Object.keys(message.resourceLabels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 37, wireType 2 =*/298).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.resourceLabels[keys[i]]).ldelim();
+ if (message.loggingConfig != null && Object.hasOwnProperty.call(message, "loggingConfig"))
+ $root.google.container.v1.NodePoolLoggingConfig.encode(message.loggingConfig, writer.uint32(/* id 38, wireType 2 =*/306).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NodeConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {google.container.v1.INodeConfig} message NodeConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NodeConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeConfig} NodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeConfig(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.machineType = reader.string();
+ break;
+ }
+ case 2: {
+ message.diskSizeGb = reader.int32();
+ break;
+ }
+ case 3: {
+ if (!(message.oauthScopes && message.oauthScopes.length))
+ message.oauthScopes = [];
+ message.oauthScopes.push(reader.string());
+ break;
+ }
+ case 9: {
+ message.serviceAccount = reader.string();
+ break;
+ }
+ case 4: {
+ if (message.metadata === $util.emptyObject)
+ message.metadata = {};
+ 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.metadata[key] = value;
+ break;
+ }
+ case 5: {
+ message.imageType = reader.string();
+ break;
+ }
+ case 6: {
+ if (message.labels === $util.emptyObject)
+ message.labels = {};
+ 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.labels[key] = value;
+ break;
+ }
+ case 7: {
+ message.localSsdCount = reader.int32();
+ break;
+ }
+ case 8: {
+ if (!(message.tags && message.tags.length))
+ message.tags = [];
+ message.tags.push(reader.string());
+ break;
+ }
+ case 10: {
+ message.preemptible = reader.bool();
+ break;
+ }
+ case 11: {
+ if (!(message.accelerators && message.accelerators.length))
+ message.accelerators = [];
+ message.accelerators.push($root.google.container.v1.AcceleratorConfig.decode(reader, reader.uint32()));
+ break;
+ }
+ case 12: {
+ message.diskType = reader.string();
+ break;
+ }
+ case 13: {
+ message.minCpuPlatform = reader.string();
+ break;
+ }
+ case 14: {
+ message.workloadMetadataConfig = $root.google.container.v1.WorkloadMetadataConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 15: {
+ if (!(message.taints && message.taints.length))
+ message.taints = [];
+ message.taints.push($root.google.container.v1.NodeTaint.decode(reader, reader.uint32()));
+ break;
+ }
+ case 17: {
+ message.sandboxConfig = $root.google.container.v1.SandboxConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 18: {
+ message.nodeGroup = reader.string();
+ break;
+ }
+ case 19: {
+ message.reservationAffinity = $root.google.container.v1.ReservationAffinity.decode(reader, reader.uint32());
+ break;
+ }
+ case 20: {
+ message.shieldedInstanceConfig = $root.google.container.v1.ShieldedInstanceConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 21: {
+ message.linuxNodeConfig = $root.google.container.v1.LinuxNodeConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 22: {
+ message.kubeletConfig = $root.google.container.v1.NodeKubeletConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 23: {
+ message.bootDiskKmsKey = reader.string();
+ break;
+ }
+ case 25: {
+ message.gcfsConfig = $root.google.container.v1.GcfsConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 26: {
+ message.advancedMachineFeatures = $root.google.container.v1.AdvancedMachineFeatures.decode(reader, reader.uint32());
+ break;
+ }
+ case 29: {
+ message.gvnic = $root.google.container.v1.VirtualNIC.decode(reader, reader.uint32());
+ break;
+ }
+ case 32: {
+ message.spot = reader.bool();
+ break;
+ }
+ case 35: {
+ message.confidentialNodes = $root.google.container.v1.ConfidentialNodes.decode(reader, reader.uint32());
+ break;
+ }
+ case 37: {
+ if (message.resourceLabels === $util.emptyObject)
+ message.resourceLabels = {};
+ 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.resourceLabels[key] = value;
+ break;
+ }
+ case 38: {
+ message.loggingConfig = $root.google.container.v1.NodePoolLoggingConfig.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NodeConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeConfig} NodeConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NodeConfig message.
+ * @function verify
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NodeConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.machineType != null && message.hasOwnProperty("machineType"))
+ if (!$util.isString(message.machineType))
+ return "machineType: string expected";
+ if (message.diskSizeGb != null && message.hasOwnProperty("diskSizeGb"))
+ if (!$util.isInteger(message.diskSizeGb))
+ return "diskSizeGb: integer expected";
+ if (message.oauthScopes != null && message.hasOwnProperty("oauthScopes")) {
+ if (!Array.isArray(message.oauthScopes))
+ return "oauthScopes: array expected";
+ for (var i = 0; i < message.oauthScopes.length; ++i)
+ if (!$util.isString(message.oauthScopes[i]))
+ return "oauthScopes: string[] expected";
+ }
+ if (message.serviceAccount != null && message.hasOwnProperty("serviceAccount"))
+ if (!$util.isString(message.serviceAccount))
+ return "serviceAccount: string expected";
+ if (message.metadata != null && message.hasOwnProperty("metadata")) {
+ if (!$util.isObject(message.metadata))
+ return "metadata: object expected";
+ var key = Object.keys(message.metadata);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.metadata[key[i]]))
+ return "metadata: string{k:string} expected";
+ }
+ if (message.imageType != null && message.hasOwnProperty("imageType"))
+ if (!$util.isString(message.imageType))
+ return "imageType: string expected";
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!$util.isObject(message.labels))
+ return "labels: object expected";
+ var key = Object.keys(message.labels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.labels[key[i]]))
+ return "labels: string{k:string} expected";
+ }
+ if (message.localSsdCount != null && message.hasOwnProperty("localSsdCount"))
+ if (!$util.isInteger(message.localSsdCount))
+ return "localSsdCount: integer expected";
+ if (message.tags != null && message.hasOwnProperty("tags")) {
+ if (!Array.isArray(message.tags))
+ return "tags: array expected";
+ for (var i = 0; i < message.tags.length; ++i)
+ if (!$util.isString(message.tags[i]))
+ return "tags: string[] expected";
+ }
+ if (message.preemptible != null && message.hasOwnProperty("preemptible"))
+ if (typeof message.preemptible !== "boolean")
+ return "preemptible: boolean expected";
+ if (message.accelerators != null && message.hasOwnProperty("accelerators")) {
+ if (!Array.isArray(message.accelerators))
+ return "accelerators: array expected";
+ for (var i = 0; i < message.accelerators.length; ++i) {
+ var error = $root.google.container.v1.AcceleratorConfig.verify(message.accelerators[i]);
+ if (error)
+ return "accelerators." + error;
+ }
+ }
+ if (message.diskType != null && message.hasOwnProperty("diskType"))
+ if (!$util.isString(message.diskType))
+ return "diskType: string expected";
+ if (message.minCpuPlatform != null && message.hasOwnProperty("minCpuPlatform"))
+ if (!$util.isString(message.minCpuPlatform))
+ return "minCpuPlatform: string expected";
+ if (message.workloadMetadataConfig != null && message.hasOwnProperty("workloadMetadataConfig")) {
+ var error = $root.google.container.v1.WorkloadMetadataConfig.verify(message.workloadMetadataConfig);
+ if (error)
+ return "workloadMetadataConfig." + error;
+ }
+ if (message.taints != null && message.hasOwnProperty("taints")) {
+ if (!Array.isArray(message.taints))
+ return "taints: array expected";
+ for (var i = 0; i < message.taints.length; ++i) {
+ var error = $root.google.container.v1.NodeTaint.verify(message.taints[i]);
+ if (error)
+ return "taints." + error;
+ }
+ }
+ if (message.sandboxConfig != null && message.hasOwnProperty("sandboxConfig")) {
+ var error = $root.google.container.v1.SandboxConfig.verify(message.sandboxConfig);
+ if (error)
+ return "sandboxConfig." + error;
+ }
+ if (message.nodeGroup != null && message.hasOwnProperty("nodeGroup"))
+ if (!$util.isString(message.nodeGroup))
+ return "nodeGroup: string expected";
+ if (message.reservationAffinity != null && message.hasOwnProperty("reservationAffinity")) {
+ var error = $root.google.container.v1.ReservationAffinity.verify(message.reservationAffinity);
+ if (error)
+ return "reservationAffinity." + error;
+ }
+ if (message.shieldedInstanceConfig != null && message.hasOwnProperty("shieldedInstanceConfig")) {
+ var error = $root.google.container.v1.ShieldedInstanceConfig.verify(message.shieldedInstanceConfig);
+ if (error)
+ return "shieldedInstanceConfig." + error;
+ }
+ if (message.linuxNodeConfig != null && message.hasOwnProperty("linuxNodeConfig")) {
+ var error = $root.google.container.v1.LinuxNodeConfig.verify(message.linuxNodeConfig);
+ if (error)
+ return "linuxNodeConfig." + error;
+ }
+ if (message.kubeletConfig != null && message.hasOwnProperty("kubeletConfig")) {
+ var error = $root.google.container.v1.NodeKubeletConfig.verify(message.kubeletConfig);
+ if (error)
+ return "kubeletConfig." + error;
+ }
+ if (message.bootDiskKmsKey != null && message.hasOwnProperty("bootDiskKmsKey"))
+ if (!$util.isString(message.bootDiskKmsKey))
+ return "bootDiskKmsKey: string expected";
+ if (message.gcfsConfig != null && message.hasOwnProperty("gcfsConfig")) {
+ var error = $root.google.container.v1.GcfsConfig.verify(message.gcfsConfig);
+ if (error)
+ return "gcfsConfig." + error;
+ }
+ if (message.advancedMachineFeatures != null && message.hasOwnProperty("advancedMachineFeatures")) {
+ var error = $root.google.container.v1.AdvancedMachineFeatures.verify(message.advancedMachineFeatures);
+ if (error)
+ return "advancedMachineFeatures." + error;
+ }
+ if (message.gvnic != null && message.hasOwnProperty("gvnic")) {
+ var error = $root.google.container.v1.VirtualNIC.verify(message.gvnic);
+ if (error)
+ return "gvnic." + error;
+ }
+ if (message.spot != null && message.hasOwnProperty("spot"))
+ if (typeof message.spot !== "boolean")
+ return "spot: boolean expected";
+ if (message.confidentialNodes != null && message.hasOwnProperty("confidentialNodes")) {
+ var error = $root.google.container.v1.ConfidentialNodes.verify(message.confidentialNodes);
+ if (error)
+ return "confidentialNodes." + error;
+ }
+ if (message.resourceLabels != null && message.hasOwnProperty("resourceLabels")) {
+ if (!$util.isObject(message.resourceLabels))
+ return "resourceLabels: object expected";
+ var key = Object.keys(message.resourceLabels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.resourceLabels[key[i]]))
+ return "resourceLabels: string{k:string} expected";
+ }
+ if (message.loggingConfig != null && message.hasOwnProperty("loggingConfig")) {
+ var error = $root.google.container.v1.NodePoolLoggingConfig.verify(message.loggingConfig);
+ if (error)
+ return "loggingConfig." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NodeConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeConfig} NodeConfig
+ */
+ NodeConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeConfig)
+ return object;
+ var message = new $root.google.container.v1.NodeConfig();
+ if (object.machineType != null)
+ message.machineType = String(object.machineType);
+ if (object.diskSizeGb != null)
+ message.diskSizeGb = object.diskSizeGb | 0;
+ if (object.oauthScopes) {
+ if (!Array.isArray(object.oauthScopes))
+ throw TypeError(".google.container.v1.NodeConfig.oauthScopes: array expected");
+ message.oauthScopes = [];
+ for (var i = 0; i < object.oauthScopes.length; ++i)
+ message.oauthScopes[i] = String(object.oauthScopes[i]);
+ }
+ if (object.serviceAccount != null)
+ message.serviceAccount = String(object.serviceAccount);
+ if (object.metadata) {
+ if (typeof object.metadata !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.metadata: object expected");
+ message.metadata = {};
+ for (var keys = Object.keys(object.metadata), i = 0; i < keys.length; ++i)
+ message.metadata[keys[i]] = String(object.metadata[keys[i]]);
+ }
+ if (object.imageType != null)
+ message.imageType = String(object.imageType);
+ if (object.labels) {
+ if (typeof object.labels !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.labels: object expected");
+ message.labels = {};
+ for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
+ message.labels[keys[i]] = String(object.labels[keys[i]]);
+ }
+ if (object.localSsdCount != null)
+ message.localSsdCount = object.localSsdCount | 0;
+ if (object.tags) {
+ if (!Array.isArray(object.tags))
+ throw TypeError(".google.container.v1.NodeConfig.tags: array expected");
+ message.tags = [];
+ for (var i = 0; i < object.tags.length; ++i)
+ message.tags[i] = String(object.tags[i]);
+ }
+ if (object.preemptible != null)
+ message.preemptible = Boolean(object.preemptible);
+ if (object.accelerators) {
+ if (!Array.isArray(object.accelerators))
+ throw TypeError(".google.container.v1.NodeConfig.accelerators: array expected");
+ message.accelerators = [];
+ for (var i = 0; i < object.accelerators.length; ++i) {
+ if (typeof object.accelerators[i] !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.accelerators: object expected");
+ message.accelerators[i] = $root.google.container.v1.AcceleratorConfig.fromObject(object.accelerators[i]);
+ }
+ }
+ if (object.diskType != null)
+ message.diskType = String(object.diskType);
+ if (object.minCpuPlatform != null)
+ message.minCpuPlatform = String(object.minCpuPlatform);
+ if (object.workloadMetadataConfig != null) {
+ if (typeof object.workloadMetadataConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.workloadMetadataConfig: object expected");
+ message.workloadMetadataConfig = $root.google.container.v1.WorkloadMetadataConfig.fromObject(object.workloadMetadataConfig);
+ }
+ if (object.taints) {
+ if (!Array.isArray(object.taints))
+ throw TypeError(".google.container.v1.NodeConfig.taints: array expected");
+ message.taints = [];
+ for (var i = 0; i < object.taints.length; ++i) {
+ if (typeof object.taints[i] !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.taints: object expected");
+ message.taints[i] = $root.google.container.v1.NodeTaint.fromObject(object.taints[i]);
+ }
+ }
+ if (object.sandboxConfig != null) {
+ if (typeof object.sandboxConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.sandboxConfig: object expected");
+ message.sandboxConfig = $root.google.container.v1.SandboxConfig.fromObject(object.sandboxConfig);
+ }
+ if (object.nodeGroup != null)
+ message.nodeGroup = String(object.nodeGroup);
+ if (object.reservationAffinity != null) {
+ if (typeof object.reservationAffinity !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.reservationAffinity: object expected");
+ message.reservationAffinity = $root.google.container.v1.ReservationAffinity.fromObject(object.reservationAffinity);
+ }
+ if (object.shieldedInstanceConfig != null) {
+ if (typeof object.shieldedInstanceConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.shieldedInstanceConfig: object expected");
+ message.shieldedInstanceConfig = $root.google.container.v1.ShieldedInstanceConfig.fromObject(object.shieldedInstanceConfig);
+ }
+ if (object.linuxNodeConfig != null) {
+ if (typeof object.linuxNodeConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.linuxNodeConfig: object expected");
+ message.linuxNodeConfig = $root.google.container.v1.LinuxNodeConfig.fromObject(object.linuxNodeConfig);
+ }
+ if (object.kubeletConfig != null) {
+ if (typeof object.kubeletConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.kubeletConfig: object expected");
+ message.kubeletConfig = $root.google.container.v1.NodeKubeletConfig.fromObject(object.kubeletConfig);
+ }
+ if (object.bootDiskKmsKey != null)
+ message.bootDiskKmsKey = String(object.bootDiskKmsKey);
+ if (object.gcfsConfig != null) {
+ if (typeof object.gcfsConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.gcfsConfig: object expected");
+ message.gcfsConfig = $root.google.container.v1.GcfsConfig.fromObject(object.gcfsConfig);
+ }
+ if (object.advancedMachineFeatures != null) {
+ if (typeof object.advancedMachineFeatures !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.advancedMachineFeatures: object expected");
+ message.advancedMachineFeatures = $root.google.container.v1.AdvancedMachineFeatures.fromObject(object.advancedMachineFeatures);
+ }
+ if (object.gvnic != null) {
+ if (typeof object.gvnic !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.gvnic: object expected");
+ message.gvnic = $root.google.container.v1.VirtualNIC.fromObject(object.gvnic);
+ }
+ if (object.spot != null)
+ message.spot = Boolean(object.spot);
+ if (object.confidentialNodes != null) {
+ if (typeof object.confidentialNodes !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.confidentialNodes: object expected");
+ message.confidentialNodes = $root.google.container.v1.ConfidentialNodes.fromObject(object.confidentialNodes);
+ }
+ if (object.resourceLabels) {
+ if (typeof object.resourceLabels !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.resourceLabels: object expected");
+ message.resourceLabels = {};
+ for (var keys = Object.keys(object.resourceLabels), i = 0; i < keys.length; ++i)
+ message.resourceLabels[keys[i]] = String(object.resourceLabels[keys[i]]);
+ }
+ if (object.loggingConfig != null) {
+ if (typeof object.loggingConfig !== "object")
+ throw TypeError(".google.container.v1.NodeConfig.loggingConfig: object expected");
+ message.loggingConfig = $root.google.container.v1.NodePoolLoggingConfig.fromObject(object.loggingConfig);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NodeConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {google.container.v1.NodeConfig} message NodeConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NodeConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.oauthScopes = [];
+ object.tags = [];
+ object.accelerators = [];
+ object.taints = [];
+ }
+ if (options.objects || options.defaults) {
+ object.metadata = {};
+ object.labels = {};
+ object.resourceLabels = {};
+ }
+ if (options.defaults) {
+ object.machineType = "";
+ object.diskSizeGb = 0;
+ object.imageType = "";
+ object.localSsdCount = 0;
+ object.serviceAccount = "";
+ object.preemptible = false;
+ object.diskType = "";
+ object.minCpuPlatform = "";
+ object.workloadMetadataConfig = null;
+ object.sandboxConfig = null;
+ object.nodeGroup = "";
+ object.reservationAffinity = null;
+ object.shieldedInstanceConfig = null;
+ object.linuxNodeConfig = null;
+ object.kubeletConfig = null;
+ object.bootDiskKmsKey = "";
+ object.gcfsConfig = null;
+ object.advancedMachineFeatures = null;
+ object.gvnic = null;
+ object.spot = false;
+ object.confidentialNodes = null;
+ object.loggingConfig = null;
+ }
+ if (message.machineType != null && message.hasOwnProperty("machineType"))
+ object.machineType = message.machineType;
+ if (message.diskSizeGb != null && message.hasOwnProperty("diskSizeGb"))
+ object.diskSizeGb = message.diskSizeGb;
+ if (message.oauthScopes && message.oauthScopes.length) {
+ object.oauthScopes = [];
+ for (var j = 0; j < message.oauthScopes.length; ++j)
+ object.oauthScopes[j] = message.oauthScopes[j];
+ }
+ var keys2;
+ if (message.metadata && (keys2 = Object.keys(message.metadata)).length) {
+ object.metadata = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.metadata[keys2[j]] = message.metadata[keys2[j]];
+ }
+ if (message.imageType != null && message.hasOwnProperty("imageType"))
+ object.imageType = message.imageType;
+ if (message.labels && (keys2 = Object.keys(message.labels)).length) {
+ object.labels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.labels[keys2[j]] = message.labels[keys2[j]];
+ }
+ if (message.localSsdCount != null && message.hasOwnProperty("localSsdCount"))
+ object.localSsdCount = message.localSsdCount;
+ if (message.tags && message.tags.length) {
+ object.tags = [];
+ for (var j = 0; j < message.tags.length; ++j)
+ object.tags[j] = message.tags[j];
+ }
+ if (message.serviceAccount != null && message.hasOwnProperty("serviceAccount"))
+ object.serviceAccount = message.serviceAccount;
+ if (message.preemptible != null && message.hasOwnProperty("preemptible"))
+ object.preemptible = message.preemptible;
+ if (message.accelerators && message.accelerators.length) {
+ object.accelerators = [];
+ for (var j = 0; j < message.accelerators.length; ++j)
+ object.accelerators[j] = $root.google.container.v1.AcceleratorConfig.toObject(message.accelerators[j], options);
+ }
+ if (message.diskType != null && message.hasOwnProperty("diskType"))
+ object.diskType = message.diskType;
+ if (message.minCpuPlatform != null && message.hasOwnProperty("minCpuPlatform"))
+ object.minCpuPlatform = message.minCpuPlatform;
+ if (message.workloadMetadataConfig != null && message.hasOwnProperty("workloadMetadataConfig"))
+ object.workloadMetadataConfig = $root.google.container.v1.WorkloadMetadataConfig.toObject(message.workloadMetadataConfig, options);
+ if (message.taints && message.taints.length) {
+ object.taints = [];
+ for (var j = 0; j < message.taints.length; ++j)
+ object.taints[j] = $root.google.container.v1.NodeTaint.toObject(message.taints[j], options);
+ }
+ if (message.sandboxConfig != null && message.hasOwnProperty("sandboxConfig"))
+ object.sandboxConfig = $root.google.container.v1.SandboxConfig.toObject(message.sandboxConfig, options);
+ if (message.nodeGroup != null && message.hasOwnProperty("nodeGroup"))
+ object.nodeGroup = message.nodeGroup;
+ if (message.reservationAffinity != null && message.hasOwnProperty("reservationAffinity"))
+ object.reservationAffinity = $root.google.container.v1.ReservationAffinity.toObject(message.reservationAffinity, options);
+ if (message.shieldedInstanceConfig != null && message.hasOwnProperty("shieldedInstanceConfig"))
+ object.shieldedInstanceConfig = $root.google.container.v1.ShieldedInstanceConfig.toObject(message.shieldedInstanceConfig, options);
+ if (message.linuxNodeConfig != null && message.hasOwnProperty("linuxNodeConfig"))
+ object.linuxNodeConfig = $root.google.container.v1.LinuxNodeConfig.toObject(message.linuxNodeConfig, options);
+ if (message.kubeletConfig != null && message.hasOwnProperty("kubeletConfig"))
+ object.kubeletConfig = $root.google.container.v1.NodeKubeletConfig.toObject(message.kubeletConfig, options);
+ if (message.bootDiskKmsKey != null && message.hasOwnProperty("bootDiskKmsKey"))
+ object.bootDiskKmsKey = message.bootDiskKmsKey;
+ if (message.gcfsConfig != null && message.hasOwnProperty("gcfsConfig"))
+ object.gcfsConfig = $root.google.container.v1.GcfsConfig.toObject(message.gcfsConfig, options);
+ if (message.advancedMachineFeatures != null && message.hasOwnProperty("advancedMachineFeatures"))
+ object.advancedMachineFeatures = $root.google.container.v1.AdvancedMachineFeatures.toObject(message.advancedMachineFeatures, options);
+ if (message.gvnic != null && message.hasOwnProperty("gvnic"))
+ object.gvnic = $root.google.container.v1.VirtualNIC.toObject(message.gvnic, options);
+ if (message.spot != null && message.hasOwnProperty("spot"))
+ object.spot = message.spot;
+ if (message.confidentialNodes != null && message.hasOwnProperty("confidentialNodes"))
+ object.confidentialNodes = $root.google.container.v1.ConfidentialNodes.toObject(message.confidentialNodes, options);
+ if (message.resourceLabels && (keys2 = Object.keys(message.resourceLabels)).length) {
+ object.resourceLabels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.resourceLabels[keys2[j]] = message.resourceLabels[keys2[j]];
+ }
+ if (message.loggingConfig != null && message.hasOwnProperty("loggingConfig"))
+ object.loggingConfig = $root.google.container.v1.NodePoolLoggingConfig.toObject(message.loggingConfig, options);
+ return object;
+ };
+
+ /**
+ * Converts this NodeConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NodeConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NodeConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NodeConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeConfig";
+ };
+
+ return NodeConfig;
+ })();
+
+ v1.AdvancedMachineFeatures = (function() {
+
+ /**
+ * Properties of an AdvancedMachineFeatures.
+ * @memberof google.container.v1
+ * @interface IAdvancedMachineFeatures
+ * @property {number|Long|null} [threadsPerCore] AdvancedMachineFeatures threadsPerCore
+ */
+
+ /**
+ * Constructs a new AdvancedMachineFeatures.
+ * @memberof google.container.v1
+ * @classdesc Represents an AdvancedMachineFeatures.
+ * @implements IAdvancedMachineFeatures
+ * @constructor
+ * @param {google.container.v1.IAdvancedMachineFeatures=} [properties] Properties to set
+ */
+ function AdvancedMachineFeatures(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]];
+ }
+
+ /**
+ * AdvancedMachineFeatures threadsPerCore.
+ * @member {number|Long|null|undefined} threadsPerCore
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @instance
+ */
+ AdvancedMachineFeatures.prototype.threadsPerCore = null;
+
+ // OneOf field names bound to virtual getters and setters
+ var $oneOfFields;
+
+ /**
+ * AdvancedMachineFeatures _threadsPerCore.
+ * @member {"threadsPerCore"|undefined} _threadsPerCore
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @instance
+ */
+ Object.defineProperty(AdvancedMachineFeatures.prototype, "_threadsPerCore", {
+ get: $util.oneOfGetter($oneOfFields = ["threadsPerCore"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * Creates a new AdvancedMachineFeatures instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {google.container.v1.IAdvancedMachineFeatures=} [properties] Properties to set
+ * @returns {google.container.v1.AdvancedMachineFeatures} AdvancedMachineFeatures instance
+ */
+ AdvancedMachineFeatures.create = function create(properties) {
+ return new AdvancedMachineFeatures(properties);
+ };
+
+ /**
+ * Encodes the specified AdvancedMachineFeatures message. Does not implicitly {@link google.container.v1.AdvancedMachineFeatures.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {google.container.v1.IAdvancedMachineFeatures} message AdvancedMachineFeatures message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AdvancedMachineFeatures.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.threadsPerCore != null && Object.hasOwnProperty.call(message, "threadsPerCore"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int64(message.threadsPerCore);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AdvancedMachineFeatures message, length delimited. Does not implicitly {@link google.container.v1.AdvancedMachineFeatures.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {google.container.v1.IAdvancedMachineFeatures} message AdvancedMachineFeatures message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AdvancedMachineFeatures.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AdvancedMachineFeatures message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.AdvancedMachineFeatures} AdvancedMachineFeatures
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AdvancedMachineFeatures.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.AdvancedMachineFeatures();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.threadsPerCore = reader.int64();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AdvancedMachineFeatures message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.AdvancedMachineFeatures} AdvancedMachineFeatures
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AdvancedMachineFeatures.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AdvancedMachineFeatures message.
+ * @function verify
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AdvancedMachineFeatures.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ var properties = {};
+ if (message.threadsPerCore != null && message.hasOwnProperty("threadsPerCore")) {
+ properties._threadsPerCore = 1;
+ if (!$util.isInteger(message.threadsPerCore) && !(message.threadsPerCore && $util.isInteger(message.threadsPerCore.low) && $util.isInteger(message.threadsPerCore.high)))
+ return "threadsPerCore: integer|Long expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AdvancedMachineFeatures message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.AdvancedMachineFeatures} AdvancedMachineFeatures
+ */
+ AdvancedMachineFeatures.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.AdvancedMachineFeatures)
+ return object;
+ var message = new $root.google.container.v1.AdvancedMachineFeatures();
+ if (object.threadsPerCore != null)
+ if ($util.Long)
+ (message.threadsPerCore = $util.Long.fromValue(object.threadsPerCore)).unsigned = false;
+ else if (typeof object.threadsPerCore === "string")
+ message.threadsPerCore = parseInt(object.threadsPerCore, 10);
+ else if (typeof object.threadsPerCore === "number")
+ message.threadsPerCore = object.threadsPerCore;
+ else if (typeof object.threadsPerCore === "object")
+ message.threadsPerCore = new $util.LongBits(object.threadsPerCore.low >>> 0, object.threadsPerCore.high >>> 0).toNumber();
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AdvancedMachineFeatures message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {google.container.v1.AdvancedMachineFeatures} message AdvancedMachineFeatures
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AdvancedMachineFeatures.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (message.threadsPerCore != null && message.hasOwnProperty("threadsPerCore")) {
+ if (typeof message.threadsPerCore === "number")
+ object.threadsPerCore = options.longs === String ? String(message.threadsPerCore) : message.threadsPerCore;
+ else
+ object.threadsPerCore = options.longs === String ? $util.Long.prototype.toString.call(message.threadsPerCore) : options.longs === Number ? new $util.LongBits(message.threadsPerCore.low >>> 0, message.threadsPerCore.high >>> 0).toNumber() : message.threadsPerCore;
+ if (options.oneofs)
+ object._threadsPerCore = "threadsPerCore";
+ }
+ return object;
+ };
+
+ /**
+ * Converts this AdvancedMachineFeatures to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AdvancedMachineFeatures.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AdvancedMachineFeatures
+ * @function getTypeUrl
+ * @memberof google.container.v1.AdvancedMachineFeatures
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AdvancedMachineFeatures.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.AdvancedMachineFeatures";
+ };
+
+ return AdvancedMachineFeatures;
+ })();
+
+ v1.NodeNetworkConfig = (function() {
+
+ /**
+ * Properties of a NodeNetworkConfig.
+ * @memberof google.container.v1
+ * @interface INodeNetworkConfig
+ * @property {boolean|null} [createPodRange] NodeNetworkConfig createPodRange
+ * @property {string|null} [podRange] NodeNetworkConfig podRange
+ * @property {string|null} [podIpv4CidrBlock] NodeNetworkConfig podIpv4CidrBlock
+ * @property {boolean|null} [enablePrivateNodes] NodeNetworkConfig enablePrivateNodes
+ * @property {google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig|null} [networkPerformanceConfig] NodeNetworkConfig networkPerformanceConfig
+ */
+
+ /**
+ * Constructs a new NodeNetworkConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a NodeNetworkConfig.
+ * @implements INodeNetworkConfig
+ * @constructor
+ * @param {google.container.v1.INodeNetworkConfig=} [properties] Properties to set
+ */
+ function NodeNetworkConfig(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]];
+ }
+
+ /**
+ * NodeNetworkConfig createPodRange.
+ * @member {boolean} createPodRange
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ NodeNetworkConfig.prototype.createPodRange = false;
+
+ /**
+ * NodeNetworkConfig podRange.
+ * @member {string} podRange
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ NodeNetworkConfig.prototype.podRange = "";
+
+ /**
+ * NodeNetworkConfig podIpv4CidrBlock.
+ * @member {string} podIpv4CidrBlock
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ NodeNetworkConfig.prototype.podIpv4CidrBlock = "";
+
+ /**
+ * NodeNetworkConfig enablePrivateNodes.
+ * @member {boolean|null|undefined} enablePrivateNodes
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ NodeNetworkConfig.prototype.enablePrivateNodes = null;
+
+ /**
+ * NodeNetworkConfig networkPerformanceConfig.
+ * @member {google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig|null|undefined} networkPerformanceConfig
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ NodeNetworkConfig.prototype.networkPerformanceConfig = null;
+
+ // OneOf field names bound to virtual getters and setters
+ var $oneOfFields;
+
+ /**
+ * NodeNetworkConfig _enablePrivateNodes.
+ * @member {"enablePrivateNodes"|undefined} _enablePrivateNodes
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ Object.defineProperty(NodeNetworkConfig.prototype, "_enablePrivateNodes", {
+ get: $util.oneOfGetter($oneOfFields = ["enablePrivateNodes"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * NodeNetworkConfig _networkPerformanceConfig.
+ * @member {"networkPerformanceConfig"|undefined} _networkPerformanceConfig
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ */
+ Object.defineProperty(NodeNetworkConfig.prototype, "_networkPerformanceConfig", {
+ get: $util.oneOfGetter($oneOfFields = ["networkPerformanceConfig"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * Creates a new NodeNetworkConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {google.container.v1.INodeNetworkConfig=} [properties] Properties to set
+ * @returns {google.container.v1.NodeNetworkConfig} NodeNetworkConfig instance
+ */
+ NodeNetworkConfig.create = function create(properties) {
+ return new NodeNetworkConfig(properties);
+ };
+
+ /**
+ * Encodes the specified NodeNetworkConfig message. Does not implicitly {@link google.container.v1.NodeNetworkConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {google.container.v1.INodeNetworkConfig} message NodeNetworkConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeNetworkConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.createPodRange != null && Object.hasOwnProperty.call(message, "createPodRange"))
+ writer.uint32(/* id 4, wireType 0 =*/32).bool(message.createPodRange);
+ if (message.podRange != null && Object.hasOwnProperty.call(message, "podRange"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.podRange);
+ if (message.podIpv4CidrBlock != null && Object.hasOwnProperty.call(message, "podIpv4CidrBlock"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.podIpv4CidrBlock);
+ if (message.enablePrivateNodes != null && Object.hasOwnProperty.call(message, "enablePrivateNodes"))
+ writer.uint32(/* id 9, wireType 0 =*/72).bool(message.enablePrivateNodes);
+ if (message.networkPerformanceConfig != null && Object.hasOwnProperty.call(message, "networkPerformanceConfig"))
+ $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.encode(message.networkPerformanceConfig, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NodeNetworkConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeNetworkConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {google.container.v1.INodeNetworkConfig} message NodeNetworkConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeNetworkConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NodeNetworkConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeNetworkConfig} NodeNetworkConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeNetworkConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeNetworkConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 4: {
+ message.createPodRange = reader.bool();
+ break;
+ }
+ case 5: {
+ message.podRange = reader.string();
+ break;
+ }
+ case 6: {
+ message.podIpv4CidrBlock = reader.string();
+ break;
+ }
+ case 9: {
+ message.enablePrivateNodes = reader.bool();
+ break;
+ }
+ case 11: {
+ message.networkPerformanceConfig = $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NodeNetworkConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeNetworkConfig} NodeNetworkConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeNetworkConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NodeNetworkConfig message.
+ * @function verify
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NodeNetworkConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ var properties = {};
+ if (message.createPodRange != null && message.hasOwnProperty("createPodRange"))
+ if (typeof message.createPodRange !== "boolean")
+ return "createPodRange: boolean expected";
+ if (message.podRange != null && message.hasOwnProperty("podRange"))
+ if (!$util.isString(message.podRange))
+ return "podRange: string expected";
+ if (message.podIpv4CidrBlock != null && message.hasOwnProperty("podIpv4CidrBlock"))
+ if (!$util.isString(message.podIpv4CidrBlock))
+ return "podIpv4CidrBlock: string expected";
+ if (message.enablePrivateNodes != null && message.hasOwnProperty("enablePrivateNodes")) {
+ properties._enablePrivateNodes = 1;
+ if (typeof message.enablePrivateNodes !== "boolean")
+ return "enablePrivateNodes: boolean expected";
+ }
+ if (message.networkPerformanceConfig != null && message.hasOwnProperty("networkPerformanceConfig")) {
+ properties._networkPerformanceConfig = 1;
+ {
+ var error = $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.verify(message.networkPerformanceConfig);
+ if (error)
+ return "networkPerformanceConfig." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NodeNetworkConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeNetworkConfig} NodeNetworkConfig
+ */
+ NodeNetworkConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeNetworkConfig)
+ return object;
+ var message = new $root.google.container.v1.NodeNetworkConfig();
+ if (object.createPodRange != null)
+ message.createPodRange = Boolean(object.createPodRange);
+ if (object.podRange != null)
+ message.podRange = String(object.podRange);
+ if (object.podIpv4CidrBlock != null)
+ message.podIpv4CidrBlock = String(object.podIpv4CidrBlock);
+ if (object.enablePrivateNodes != null)
+ message.enablePrivateNodes = Boolean(object.enablePrivateNodes);
+ if (object.networkPerformanceConfig != null) {
+ if (typeof object.networkPerformanceConfig !== "object")
+ throw TypeError(".google.container.v1.NodeNetworkConfig.networkPerformanceConfig: object expected");
+ message.networkPerformanceConfig = $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.fromObject(object.networkPerformanceConfig);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NodeNetworkConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {google.container.v1.NodeNetworkConfig} message NodeNetworkConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NodeNetworkConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.createPodRange = false;
+ object.podRange = "";
+ object.podIpv4CidrBlock = "";
+ }
+ if (message.createPodRange != null && message.hasOwnProperty("createPodRange"))
+ object.createPodRange = message.createPodRange;
+ if (message.podRange != null && message.hasOwnProperty("podRange"))
+ object.podRange = message.podRange;
+ if (message.podIpv4CidrBlock != null && message.hasOwnProperty("podIpv4CidrBlock"))
+ object.podIpv4CidrBlock = message.podIpv4CidrBlock;
+ if (message.enablePrivateNodes != null && message.hasOwnProperty("enablePrivateNodes")) {
+ object.enablePrivateNodes = message.enablePrivateNodes;
+ if (options.oneofs)
+ object._enablePrivateNodes = "enablePrivateNodes";
+ }
+ if (message.networkPerformanceConfig != null && message.hasOwnProperty("networkPerformanceConfig")) {
+ object.networkPerformanceConfig = $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.toObject(message.networkPerformanceConfig, options);
+ if (options.oneofs)
+ object._networkPerformanceConfig = "networkPerformanceConfig";
+ }
+ return object;
+ };
+
+ /**
+ * Converts this NodeNetworkConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NodeNetworkConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NodeNetworkConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NodeNetworkConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeNetworkConfig";
+ };
+
+ NodeNetworkConfig.NetworkPerformanceConfig = (function() {
+
+ /**
+ * Properties of a NetworkPerformanceConfig.
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @interface INetworkPerformanceConfig
+ * @property {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier|null} [totalEgressBandwidthTier] NetworkPerformanceConfig totalEgressBandwidthTier
+ */
+
+ /**
+ * Constructs a new NetworkPerformanceConfig.
+ * @memberof google.container.v1.NodeNetworkConfig
+ * @classdesc Represents a NetworkPerformanceConfig.
+ * @implements INetworkPerformanceConfig
+ * @constructor
+ * @param {google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig=} [properties] Properties to set
+ */
+ function NetworkPerformanceConfig(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]];
+ }
+
+ /**
+ * NetworkPerformanceConfig totalEgressBandwidthTier.
+ * @member {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier|null|undefined} totalEgressBandwidthTier
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @instance
+ */
+ NetworkPerformanceConfig.prototype.totalEgressBandwidthTier = null;
+
+ // OneOf field names bound to virtual getters and setters
+ var $oneOfFields;
+
+ /**
+ * NetworkPerformanceConfig _totalEgressBandwidthTier.
+ * @member {"totalEgressBandwidthTier"|undefined} _totalEgressBandwidthTier
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @instance
+ */
+ Object.defineProperty(NetworkPerformanceConfig.prototype, "_totalEgressBandwidthTier", {
+ get: $util.oneOfGetter($oneOfFields = ["totalEgressBandwidthTier"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * Creates a new NetworkPerformanceConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig=} [properties] Properties to set
+ * @returns {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig} NetworkPerformanceConfig instance
+ */
+ NetworkPerformanceConfig.create = function create(properties) {
+ return new NetworkPerformanceConfig(properties);
+ };
+
+ /**
+ * Encodes the specified NetworkPerformanceConfig message. Does not implicitly {@link google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig} message NetworkPerformanceConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkPerformanceConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.totalEgressBandwidthTier != null && Object.hasOwnProperty.call(message, "totalEgressBandwidthTier"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.totalEgressBandwidthTier);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NetworkPerformanceConfig message, length delimited. Does not implicitly {@link google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {google.container.v1.NodeNetworkConfig.INetworkPerformanceConfig} message NetworkPerformanceConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkPerformanceConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NetworkPerformanceConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig} NetworkPerformanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkPerformanceConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.totalEgressBandwidthTier = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NetworkPerformanceConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig} NetworkPerformanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkPerformanceConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NetworkPerformanceConfig message.
+ * @function verify
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NetworkPerformanceConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ var properties = {};
+ if (message.totalEgressBandwidthTier != null && message.hasOwnProperty("totalEgressBandwidthTier")) {
+ properties._totalEgressBandwidthTier = 1;
+ switch (message.totalEgressBandwidthTier) {
+ default:
+ return "totalEgressBandwidthTier: enum value expected";
+ case 0:
+ case 1:
+ break;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NetworkPerformanceConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig} NetworkPerformanceConfig
+ */
+ NetworkPerformanceConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig)
+ return object;
+ var message = new $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig();
+ switch (object.totalEgressBandwidthTier) {
+ default:
+ if (typeof object.totalEgressBandwidthTier === "number") {
+ message.totalEgressBandwidthTier = object.totalEgressBandwidthTier;
+ break;
+ }
+ break;
+ case "TIER_UNSPECIFIED":
+ case 0:
+ message.totalEgressBandwidthTier = 0;
+ break;
+ case "TIER_1":
+ case 1:
+ message.totalEgressBandwidthTier = 1;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NetworkPerformanceConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig} message NetworkPerformanceConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NetworkPerformanceConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (message.totalEgressBandwidthTier != null && message.hasOwnProperty("totalEgressBandwidthTier")) {
+ object.totalEgressBandwidthTier = options.enums === String ? $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier[message.totalEgressBandwidthTier] === undefined ? message.totalEgressBandwidthTier : $root.google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier[message.totalEgressBandwidthTier] : message.totalEgressBandwidthTier;
+ if (options.oneofs)
+ object._totalEgressBandwidthTier = "totalEgressBandwidthTier";
+ }
+ return object;
+ };
+
+ /**
+ * Converts this NetworkPerformanceConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NetworkPerformanceConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NetworkPerformanceConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NetworkPerformanceConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig";
+ };
+
+ /**
+ * Tier enum.
+ * @name google.container.v1.NodeNetworkConfig.NetworkPerformanceConfig.Tier
+ * @enum {number}
+ * @property {number} TIER_UNSPECIFIED=0 TIER_UNSPECIFIED value
+ * @property {number} TIER_1=1 TIER_1 value
+ */
+ NetworkPerformanceConfig.Tier = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "TIER_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "TIER_1"] = 1;
+ return values;
+ })();
+
+ return NetworkPerformanceConfig;
+ })();
+
+ return NodeNetworkConfig;
+ })();
+
+ v1.ShieldedInstanceConfig = (function() {
+
+ /**
+ * Properties of a ShieldedInstanceConfig.
+ * @memberof google.container.v1
+ * @interface IShieldedInstanceConfig
+ * @property {boolean|null} [enableSecureBoot] ShieldedInstanceConfig enableSecureBoot
+ * @property {boolean|null} [enableIntegrityMonitoring] ShieldedInstanceConfig enableIntegrityMonitoring
+ */
+
+ /**
+ * Constructs a new ShieldedInstanceConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a ShieldedInstanceConfig.
+ * @implements IShieldedInstanceConfig
+ * @constructor
+ * @param {google.container.v1.IShieldedInstanceConfig=} [properties] Properties to set
+ */
+ function ShieldedInstanceConfig(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]];
+ }
+
+ /**
+ * ShieldedInstanceConfig enableSecureBoot.
+ * @member {boolean} enableSecureBoot
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @instance
+ */
+ ShieldedInstanceConfig.prototype.enableSecureBoot = false;
+
+ /**
+ * ShieldedInstanceConfig enableIntegrityMonitoring.
+ * @member {boolean} enableIntegrityMonitoring
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @instance
+ */
+ ShieldedInstanceConfig.prototype.enableIntegrityMonitoring = false;
+
+ /**
+ * Creates a new ShieldedInstanceConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {google.container.v1.IShieldedInstanceConfig=} [properties] Properties to set
+ * @returns {google.container.v1.ShieldedInstanceConfig} ShieldedInstanceConfig instance
+ */
+ ShieldedInstanceConfig.create = function create(properties) {
+ return new ShieldedInstanceConfig(properties);
+ };
+
+ /**
+ * Encodes the specified ShieldedInstanceConfig message. Does not implicitly {@link google.container.v1.ShieldedInstanceConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {google.container.v1.IShieldedInstanceConfig} message ShieldedInstanceConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ShieldedInstanceConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enableSecureBoot != null && Object.hasOwnProperty.call(message, "enableSecureBoot"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enableSecureBoot);
+ if (message.enableIntegrityMonitoring != null && Object.hasOwnProperty.call(message, "enableIntegrityMonitoring"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.enableIntegrityMonitoring);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ShieldedInstanceConfig message, length delimited. Does not implicitly {@link google.container.v1.ShieldedInstanceConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {google.container.v1.IShieldedInstanceConfig} message ShieldedInstanceConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ShieldedInstanceConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ShieldedInstanceConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.ShieldedInstanceConfig} ShieldedInstanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ShieldedInstanceConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.ShieldedInstanceConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enableSecureBoot = reader.bool();
+ break;
+ }
+ case 2: {
+ message.enableIntegrityMonitoring = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ShieldedInstanceConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.ShieldedInstanceConfig} ShieldedInstanceConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ShieldedInstanceConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ShieldedInstanceConfig message.
+ * @function verify
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ShieldedInstanceConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enableSecureBoot != null && message.hasOwnProperty("enableSecureBoot"))
+ if (typeof message.enableSecureBoot !== "boolean")
+ return "enableSecureBoot: boolean expected";
+ if (message.enableIntegrityMonitoring != null && message.hasOwnProperty("enableIntegrityMonitoring"))
+ if (typeof message.enableIntegrityMonitoring !== "boolean")
+ return "enableIntegrityMonitoring: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a ShieldedInstanceConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.ShieldedInstanceConfig} ShieldedInstanceConfig
+ */
+ ShieldedInstanceConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.ShieldedInstanceConfig)
+ return object;
+ var message = new $root.google.container.v1.ShieldedInstanceConfig();
+ if (object.enableSecureBoot != null)
+ message.enableSecureBoot = Boolean(object.enableSecureBoot);
+ if (object.enableIntegrityMonitoring != null)
+ message.enableIntegrityMonitoring = Boolean(object.enableIntegrityMonitoring);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ShieldedInstanceConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {google.container.v1.ShieldedInstanceConfig} message ShieldedInstanceConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ShieldedInstanceConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.enableSecureBoot = false;
+ object.enableIntegrityMonitoring = false;
+ }
+ if (message.enableSecureBoot != null && message.hasOwnProperty("enableSecureBoot"))
+ object.enableSecureBoot = message.enableSecureBoot;
+ if (message.enableIntegrityMonitoring != null && message.hasOwnProperty("enableIntegrityMonitoring"))
+ object.enableIntegrityMonitoring = message.enableIntegrityMonitoring;
+ return object;
+ };
+
+ /**
+ * Converts this ShieldedInstanceConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ShieldedInstanceConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ShieldedInstanceConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.ShieldedInstanceConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ShieldedInstanceConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.ShieldedInstanceConfig";
+ };
+
+ return ShieldedInstanceConfig;
+ })();
+
+ v1.SandboxConfig = (function() {
+
+ /**
+ * Properties of a SandboxConfig.
+ * @memberof google.container.v1
+ * @interface ISandboxConfig
+ * @property {google.container.v1.SandboxConfig.Type|null} [type] SandboxConfig type
+ */
+
+ /**
+ * Constructs a new SandboxConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a SandboxConfig.
+ * @implements ISandboxConfig
+ * @constructor
+ * @param {google.container.v1.ISandboxConfig=} [properties] Properties to set
+ */
+ function SandboxConfig(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]];
+ }
+
+ /**
+ * SandboxConfig type.
+ * @member {google.container.v1.SandboxConfig.Type} type
+ * @memberof google.container.v1.SandboxConfig
+ * @instance
+ */
+ SandboxConfig.prototype.type = 0;
+
+ /**
+ * Creates a new SandboxConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {google.container.v1.ISandboxConfig=} [properties] Properties to set
+ * @returns {google.container.v1.SandboxConfig} SandboxConfig instance
+ */
+ SandboxConfig.create = function create(properties) {
+ return new SandboxConfig(properties);
+ };
+
+ /**
+ * Encodes the specified SandboxConfig message. Does not implicitly {@link google.container.v1.SandboxConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {google.container.v1.ISandboxConfig} message SandboxConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SandboxConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.type);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SandboxConfig message, length delimited. Does not implicitly {@link google.container.v1.SandboxConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {google.container.v1.ISandboxConfig} message SandboxConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SandboxConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SandboxConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.SandboxConfig} SandboxConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SandboxConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.SandboxConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 2: {
+ message.type = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SandboxConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.SandboxConfig} SandboxConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SandboxConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SandboxConfig message.
+ * @function verify
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SandboxConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.type != null && message.hasOwnProperty("type"))
+ switch (message.type) {
+ default:
+ return "type: enum value expected";
+ case 0:
+ case 1:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SandboxConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.SandboxConfig} SandboxConfig
+ */
+ SandboxConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.SandboxConfig)
+ return object;
+ var message = new $root.google.container.v1.SandboxConfig();
+ switch (object.type) {
+ default:
+ if (typeof object.type === "number") {
+ message.type = object.type;
+ break;
+ }
+ break;
+ case "UNSPECIFIED":
+ case 0:
+ message.type = 0;
+ break;
+ case "GVISOR":
+ case 1:
+ message.type = 1;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SandboxConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {google.container.v1.SandboxConfig} message SandboxConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SandboxConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.type = options.enums === String ? "UNSPECIFIED" : 0;
+ if (message.type != null && message.hasOwnProperty("type"))
+ object.type = options.enums === String ? $root.google.container.v1.SandboxConfig.Type[message.type] === undefined ? message.type : $root.google.container.v1.SandboxConfig.Type[message.type] : message.type;
+ return object;
+ };
+
+ /**
+ * Converts this SandboxConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.SandboxConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SandboxConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SandboxConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.SandboxConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SandboxConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.SandboxConfig";
+ };
+
+ /**
+ * Type enum.
+ * @name google.container.v1.SandboxConfig.Type
+ * @enum {number}
+ * @property {number} UNSPECIFIED=0 UNSPECIFIED value
+ * @property {number} GVISOR=1 GVISOR value
+ */
+ SandboxConfig.Type = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "UNSPECIFIED"] = 0;
+ values[valuesById[1] = "GVISOR"] = 1;
+ return values;
+ })();
+
+ return SandboxConfig;
+ })();
+
+ v1.GcfsConfig = (function() {
+
+ /**
+ * Properties of a GcfsConfig.
+ * @memberof google.container.v1
+ * @interface IGcfsConfig
+ * @property {boolean|null} [enabled] GcfsConfig enabled
+ */
+
+ /**
+ * Constructs a new GcfsConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a GcfsConfig.
+ * @implements IGcfsConfig
+ * @constructor
+ * @param {google.container.v1.IGcfsConfig=} [properties] Properties to set
+ */
+ function GcfsConfig(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]];
+ }
+
+ /**
+ * GcfsConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.GcfsConfig
+ * @instance
+ */
+ GcfsConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new GcfsConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {google.container.v1.IGcfsConfig=} [properties] Properties to set
+ * @returns {google.container.v1.GcfsConfig} GcfsConfig instance
+ */
+ GcfsConfig.create = function create(properties) {
+ return new GcfsConfig(properties);
+ };
+
+ /**
+ * Encodes the specified GcfsConfig message. Does not implicitly {@link google.container.v1.GcfsConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {google.container.v1.IGcfsConfig} message GcfsConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcfsConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GcfsConfig message, length delimited. Does not implicitly {@link google.container.v1.GcfsConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {google.container.v1.IGcfsConfig} message GcfsConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcfsConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GcfsConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.GcfsConfig} GcfsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcfsConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.GcfsConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GcfsConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.GcfsConfig} GcfsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcfsConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GcfsConfig message.
+ * @function verify
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GcfsConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a GcfsConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.GcfsConfig} GcfsConfig
+ */
+ GcfsConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.GcfsConfig)
+ return object;
+ var message = new $root.google.container.v1.GcfsConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GcfsConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {google.container.v1.GcfsConfig} message GcfsConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GcfsConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this GcfsConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.GcfsConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GcfsConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GcfsConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.GcfsConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GcfsConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.GcfsConfig";
+ };
+
+ return GcfsConfig;
+ })();
+
+ v1.ReservationAffinity = (function() {
+
+ /**
+ * Properties of a ReservationAffinity.
+ * @memberof google.container.v1
+ * @interface IReservationAffinity
+ * @property {google.container.v1.ReservationAffinity.Type|null} [consumeReservationType] ReservationAffinity consumeReservationType
+ * @property {string|null} [key] ReservationAffinity key
+ * @property {Array.|null} [values] ReservationAffinity values
+ */
+
+ /**
+ * Constructs a new ReservationAffinity.
+ * @memberof google.container.v1
+ * @classdesc Represents a ReservationAffinity.
+ * @implements IReservationAffinity
+ * @constructor
+ * @param {google.container.v1.IReservationAffinity=} [properties] Properties to set
+ */
+ function ReservationAffinity(properties) {
+ this.values = [];
+ 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]];
+ }
+
+ /**
+ * ReservationAffinity consumeReservationType.
+ * @member {google.container.v1.ReservationAffinity.Type} consumeReservationType
+ * @memberof google.container.v1.ReservationAffinity
+ * @instance
+ */
+ ReservationAffinity.prototype.consumeReservationType = 0;
+
+ /**
+ * ReservationAffinity key.
+ * @member {string} key
+ * @memberof google.container.v1.ReservationAffinity
+ * @instance
+ */
+ ReservationAffinity.prototype.key = "";
+
+ /**
+ * ReservationAffinity values.
+ * @member {Array.} values
+ * @memberof google.container.v1.ReservationAffinity
+ * @instance
+ */
+ ReservationAffinity.prototype.values = $util.emptyArray;
+
+ /**
+ * Creates a new ReservationAffinity instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {google.container.v1.IReservationAffinity=} [properties] Properties to set
+ * @returns {google.container.v1.ReservationAffinity} ReservationAffinity instance
+ */
+ ReservationAffinity.create = function create(properties) {
+ return new ReservationAffinity(properties);
+ };
+
+ /**
+ * Encodes the specified ReservationAffinity message. Does not implicitly {@link google.container.v1.ReservationAffinity.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {google.container.v1.IReservationAffinity} message ReservationAffinity message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReservationAffinity.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.consumeReservationType != null && Object.hasOwnProperty.call(message, "consumeReservationType"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.consumeReservationType);
+ if (message.key != null && Object.hasOwnProperty.call(message, "key"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.key);
+ if (message.values != null && message.values.length)
+ for (var i = 0; i < message.values.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.values[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ReservationAffinity message, length delimited. Does not implicitly {@link google.container.v1.ReservationAffinity.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {google.container.v1.IReservationAffinity} message ReservationAffinity message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ReservationAffinity.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ReservationAffinity message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.ReservationAffinity} ReservationAffinity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReservationAffinity.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.ReservationAffinity();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.consumeReservationType = reader.int32();
+ break;
+ }
+ case 2: {
+ message.key = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.values && message.values.length))
+ message.values = [];
+ message.values.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ReservationAffinity message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.ReservationAffinity} ReservationAffinity
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ReservationAffinity.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ReservationAffinity message.
+ * @function verify
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ReservationAffinity.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.consumeReservationType != null && message.hasOwnProperty("consumeReservationType"))
+ switch (message.consumeReservationType) {
+ default:
+ return "consumeReservationType: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ break;
+ }
+ if (message.key != null && message.hasOwnProperty("key"))
+ if (!$util.isString(message.key))
+ return "key: string expected";
+ if (message.values != null && message.hasOwnProperty("values")) {
+ if (!Array.isArray(message.values))
+ return "values: array expected";
+ for (var i = 0; i < message.values.length; ++i)
+ if (!$util.isString(message.values[i]))
+ return "values: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ReservationAffinity message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.ReservationAffinity} ReservationAffinity
+ */
+ ReservationAffinity.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.ReservationAffinity)
+ return object;
+ var message = new $root.google.container.v1.ReservationAffinity();
+ switch (object.consumeReservationType) {
+ default:
+ if (typeof object.consumeReservationType === "number") {
+ message.consumeReservationType = object.consumeReservationType;
+ break;
+ }
+ break;
+ case "UNSPECIFIED":
+ case 0:
+ message.consumeReservationType = 0;
+ break;
+ case "NO_RESERVATION":
+ case 1:
+ message.consumeReservationType = 1;
+ break;
+ case "ANY_RESERVATION":
+ case 2:
+ message.consumeReservationType = 2;
+ break;
+ case "SPECIFIC_RESERVATION":
+ case 3:
+ message.consumeReservationType = 3;
+ break;
+ }
+ if (object.key != null)
+ message.key = String(object.key);
+ if (object.values) {
+ if (!Array.isArray(object.values))
+ throw TypeError(".google.container.v1.ReservationAffinity.values: array expected");
+ message.values = [];
+ for (var i = 0; i < object.values.length; ++i)
+ message.values[i] = String(object.values[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ReservationAffinity message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {google.container.v1.ReservationAffinity} message ReservationAffinity
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ReservationAffinity.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.values = [];
+ if (options.defaults) {
+ object.consumeReservationType = options.enums === String ? "UNSPECIFIED" : 0;
+ object.key = "";
+ }
+ if (message.consumeReservationType != null && message.hasOwnProperty("consumeReservationType"))
+ object.consumeReservationType = options.enums === String ? $root.google.container.v1.ReservationAffinity.Type[message.consumeReservationType] === undefined ? message.consumeReservationType : $root.google.container.v1.ReservationAffinity.Type[message.consumeReservationType] : message.consumeReservationType;
+ if (message.key != null && message.hasOwnProperty("key"))
+ object.key = message.key;
+ if (message.values && message.values.length) {
+ object.values = [];
+ for (var j = 0; j < message.values.length; ++j)
+ object.values[j] = message.values[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ReservationAffinity to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.ReservationAffinity
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ReservationAffinity.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ReservationAffinity
+ * @function getTypeUrl
+ * @memberof google.container.v1.ReservationAffinity
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ReservationAffinity.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.ReservationAffinity";
+ };
+
+ /**
+ * Type enum.
+ * @name google.container.v1.ReservationAffinity.Type
+ * @enum {number}
+ * @property {number} UNSPECIFIED=0 UNSPECIFIED value
+ * @property {number} NO_RESERVATION=1 NO_RESERVATION value
+ * @property {number} ANY_RESERVATION=2 ANY_RESERVATION value
+ * @property {number} SPECIFIC_RESERVATION=3 SPECIFIC_RESERVATION value
+ */
+ ReservationAffinity.Type = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "UNSPECIFIED"] = 0;
+ values[valuesById[1] = "NO_RESERVATION"] = 1;
+ values[valuesById[2] = "ANY_RESERVATION"] = 2;
+ values[valuesById[3] = "SPECIFIC_RESERVATION"] = 3;
+ return values;
+ })();
+
+ return ReservationAffinity;
+ })();
+
+ v1.NodeTaint = (function() {
+
+ /**
+ * Properties of a NodeTaint.
+ * @memberof google.container.v1
+ * @interface INodeTaint
+ * @property {string|null} [key] NodeTaint key
+ * @property {string|null} [value] NodeTaint value
+ * @property {google.container.v1.NodeTaint.Effect|null} [effect] NodeTaint effect
+ */
+
+ /**
+ * Constructs a new NodeTaint.
+ * @memberof google.container.v1
+ * @classdesc Represents a NodeTaint.
+ * @implements INodeTaint
+ * @constructor
+ * @param {google.container.v1.INodeTaint=} [properties] Properties to set
+ */
+ function NodeTaint(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]];
+ }
+
+ /**
+ * NodeTaint key.
+ * @member {string} key
+ * @memberof google.container.v1.NodeTaint
+ * @instance
+ */
+ NodeTaint.prototype.key = "";
+
+ /**
+ * NodeTaint value.
+ * @member {string} value
+ * @memberof google.container.v1.NodeTaint
+ * @instance
+ */
+ NodeTaint.prototype.value = "";
+
+ /**
+ * NodeTaint effect.
+ * @member {google.container.v1.NodeTaint.Effect} effect
+ * @memberof google.container.v1.NodeTaint
+ * @instance
+ */
+ NodeTaint.prototype.effect = 0;
+
+ /**
+ * Creates a new NodeTaint instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {google.container.v1.INodeTaint=} [properties] Properties to set
+ * @returns {google.container.v1.NodeTaint} NodeTaint instance
+ */
+ NodeTaint.create = function create(properties) {
+ return new NodeTaint(properties);
+ };
+
+ /**
+ * Encodes the specified NodeTaint message. Does not implicitly {@link google.container.v1.NodeTaint.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {google.container.v1.INodeTaint} message NodeTaint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeTaint.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.key != null && Object.hasOwnProperty.call(message, "key"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.key);
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.value);
+ if (message.effect != null && Object.hasOwnProperty.call(message, "effect"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.effect);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NodeTaint message, length delimited. Does not implicitly {@link google.container.v1.NodeTaint.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {google.container.v1.INodeTaint} message NodeTaint message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeTaint.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NodeTaint message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeTaint} NodeTaint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeTaint.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeTaint();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.key = reader.string();
+ break;
+ }
+ case 2: {
+ message.value = reader.string();
+ break;
+ }
+ case 3: {
+ message.effect = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NodeTaint message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeTaint} NodeTaint
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeTaint.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NodeTaint message.
+ * @function verify
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NodeTaint.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.key != null && message.hasOwnProperty("key"))
+ if (!$util.isString(message.key))
+ return "key: string expected";
+ if (message.value != null && message.hasOwnProperty("value"))
+ if (!$util.isString(message.value))
+ return "value: string expected";
+ if (message.effect != null && message.hasOwnProperty("effect"))
+ switch (message.effect) {
+ default:
+ return "effect: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ case 3:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NodeTaint message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeTaint} NodeTaint
+ */
+ NodeTaint.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeTaint)
+ return object;
+ var message = new $root.google.container.v1.NodeTaint();
+ if (object.key != null)
+ message.key = String(object.key);
+ if (object.value != null)
+ message.value = String(object.value);
+ switch (object.effect) {
+ default:
+ if (typeof object.effect === "number") {
+ message.effect = object.effect;
+ break;
+ }
+ break;
+ case "EFFECT_UNSPECIFIED":
+ case 0:
+ message.effect = 0;
+ break;
+ case "NO_SCHEDULE":
+ case 1:
+ message.effect = 1;
+ break;
+ case "PREFER_NO_SCHEDULE":
+ case 2:
+ message.effect = 2;
+ break;
+ case "NO_EXECUTE":
+ case 3:
+ message.effect = 3;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NodeTaint message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {google.container.v1.NodeTaint} message NodeTaint
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NodeTaint.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.key = "";
+ object.value = "";
+ object.effect = options.enums === String ? "EFFECT_UNSPECIFIED" : 0;
+ }
+ if (message.key != null && message.hasOwnProperty("key"))
+ object.key = message.key;
+ if (message.value != null && message.hasOwnProperty("value"))
+ object.value = message.value;
+ if (message.effect != null && message.hasOwnProperty("effect"))
+ object.effect = options.enums === String ? $root.google.container.v1.NodeTaint.Effect[message.effect] === undefined ? message.effect : $root.google.container.v1.NodeTaint.Effect[message.effect] : message.effect;
+ return object;
+ };
+
+ /**
+ * Converts this NodeTaint to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeTaint
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NodeTaint.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NodeTaint
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeTaint
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NodeTaint.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeTaint";
+ };
+
+ /**
+ * Effect enum.
+ * @name google.container.v1.NodeTaint.Effect
+ * @enum {number}
+ * @property {number} EFFECT_UNSPECIFIED=0 EFFECT_UNSPECIFIED value
+ * @property {number} NO_SCHEDULE=1 NO_SCHEDULE value
+ * @property {number} PREFER_NO_SCHEDULE=2 PREFER_NO_SCHEDULE value
+ * @property {number} NO_EXECUTE=3 NO_EXECUTE value
+ */
+ NodeTaint.Effect = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "EFFECT_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "NO_SCHEDULE"] = 1;
+ values[valuesById[2] = "PREFER_NO_SCHEDULE"] = 2;
+ values[valuesById[3] = "NO_EXECUTE"] = 3;
+ return values;
+ })();
+
+ return NodeTaint;
+ })();
+
+ v1.NodeTaints = (function() {
+
+ /**
+ * Properties of a NodeTaints.
+ * @memberof google.container.v1
+ * @interface INodeTaints
+ * @property {Array.|null} [taints] NodeTaints taints
+ */
+
+ /**
+ * Constructs a new NodeTaints.
+ * @memberof google.container.v1
+ * @classdesc Represents a NodeTaints.
+ * @implements INodeTaints
+ * @constructor
+ * @param {google.container.v1.INodeTaints=} [properties] Properties to set
+ */
+ function NodeTaints(properties) {
+ this.taints = [];
+ 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]];
+ }
+
+ /**
+ * NodeTaints taints.
+ * @member {Array.} taints
+ * @memberof google.container.v1.NodeTaints
+ * @instance
+ */
+ NodeTaints.prototype.taints = $util.emptyArray;
+
+ /**
+ * Creates a new NodeTaints instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {google.container.v1.INodeTaints=} [properties] Properties to set
+ * @returns {google.container.v1.NodeTaints} NodeTaints instance
+ */
+ NodeTaints.create = function create(properties) {
+ return new NodeTaints(properties);
+ };
+
+ /**
+ * Encodes the specified NodeTaints message. Does not implicitly {@link google.container.v1.NodeTaints.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {google.container.v1.INodeTaints} message NodeTaints message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeTaints.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.taints != null && message.taints.length)
+ for (var i = 0; i < message.taints.length; ++i)
+ $root.google.container.v1.NodeTaint.encode(message.taints[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NodeTaints message, length delimited. Does not implicitly {@link google.container.v1.NodeTaints.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {google.container.v1.INodeTaints} message NodeTaints message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeTaints.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NodeTaints message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeTaints} NodeTaints
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeTaints.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeTaints();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.taints && message.taints.length))
+ message.taints = [];
+ message.taints.push($root.google.container.v1.NodeTaint.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NodeTaints message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeTaints} NodeTaints
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeTaints.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NodeTaints message.
+ * @function verify
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NodeTaints.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.taints != null && message.hasOwnProperty("taints")) {
+ if (!Array.isArray(message.taints))
+ return "taints: array expected";
+ for (var i = 0; i < message.taints.length; ++i) {
+ var error = $root.google.container.v1.NodeTaint.verify(message.taints[i]);
+ if (error)
+ return "taints." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NodeTaints message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeTaints} NodeTaints
+ */
+ NodeTaints.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeTaints)
+ return object;
+ var message = new $root.google.container.v1.NodeTaints();
+ if (object.taints) {
+ if (!Array.isArray(object.taints))
+ throw TypeError(".google.container.v1.NodeTaints.taints: array expected");
+ message.taints = [];
+ for (var i = 0; i < object.taints.length; ++i) {
+ if (typeof object.taints[i] !== "object")
+ throw TypeError(".google.container.v1.NodeTaints.taints: object expected");
+ message.taints[i] = $root.google.container.v1.NodeTaint.fromObject(object.taints[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NodeTaints message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {google.container.v1.NodeTaints} message NodeTaints
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NodeTaints.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.taints = [];
+ if (message.taints && message.taints.length) {
+ object.taints = [];
+ for (var j = 0; j < message.taints.length; ++j)
+ object.taints[j] = $root.google.container.v1.NodeTaint.toObject(message.taints[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this NodeTaints to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeTaints
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NodeTaints.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NodeTaints
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeTaints
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NodeTaints.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeTaints";
+ };
+
+ return NodeTaints;
+ })();
+
+ v1.NodeLabels = (function() {
+
+ /**
+ * Properties of a NodeLabels.
+ * @memberof google.container.v1
+ * @interface INodeLabels
+ * @property {Object.|null} [labels] NodeLabels labels
+ */
+
+ /**
+ * Constructs a new NodeLabels.
+ * @memberof google.container.v1
+ * @classdesc Represents a NodeLabels.
+ * @implements INodeLabels
+ * @constructor
+ * @param {google.container.v1.INodeLabels=} [properties] Properties to set
+ */
+ function NodeLabels(properties) {
+ this.labels = {};
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * NodeLabels labels.
+ * @member {Object.} labels
+ * @memberof google.container.v1.NodeLabels
+ * @instance
+ */
+ NodeLabels.prototype.labels = $util.emptyObject;
+
+ /**
+ * Creates a new NodeLabels instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {google.container.v1.INodeLabels=} [properties] Properties to set
+ * @returns {google.container.v1.NodeLabels} NodeLabels instance
+ */
+ NodeLabels.create = function create(properties) {
+ return new NodeLabels(properties);
+ };
+
+ /**
+ * Encodes the specified NodeLabels message. Does not implicitly {@link google.container.v1.NodeLabels.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {google.container.v1.INodeLabels} message NodeLabels message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeLabels.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
+ for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NodeLabels message, length delimited. Does not implicitly {@link google.container.v1.NodeLabels.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {google.container.v1.INodeLabels} message NodeLabels message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NodeLabels.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NodeLabels message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NodeLabels} NodeLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeLabels.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NodeLabels(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (message.labels === $util.emptyObject)
+ message.labels = {};
+ 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.labels[key] = value;
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NodeLabels message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NodeLabels} NodeLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NodeLabels.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NodeLabels message.
+ * @function verify
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NodeLabels.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!$util.isObject(message.labels))
+ return "labels: object expected";
+ var key = Object.keys(message.labels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.labels[key[i]]))
+ return "labels: string{k:string} expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NodeLabels message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NodeLabels} NodeLabels
+ */
+ NodeLabels.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NodeLabels)
+ return object;
+ var message = new $root.google.container.v1.NodeLabels();
+ if (object.labels) {
+ if (typeof object.labels !== "object")
+ throw TypeError(".google.container.v1.NodeLabels.labels: object expected");
+ message.labels = {};
+ for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
+ message.labels[keys[i]] = String(object.labels[keys[i]]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NodeLabels message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {google.container.v1.NodeLabels} message NodeLabels
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NodeLabels.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.labels = {};
+ var keys2;
+ if (message.labels && (keys2 = Object.keys(message.labels)).length) {
+ object.labels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.labels[keys2[j]] = message.labels[keys2[j]];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this NodeLabels to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NodeLabels
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NodeLabels.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NodeLabels
+ * @function getTypeUrl
+ * @memberof google.container.v1.NodeLabels
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NodeLabels.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NodeLabels";
+ };
+
+ return NodeLabels;
+ })();
+
+ v1.ResourceLabels = (function() {
+
+ /**
+ * Properties of a ResourceLabels.
+ * @memberof google.container.v1
+ * @interface IResourceLabels
+ * @property {Object.|null} [labels] ResourceLabels labels
+ */
+
+ /**
+ * Constructs a new ResourceLabels.
+ * @memberof google.container.v1
+ * @classdesc Represents a ResourceLabels.
+ * @implements IResourceLabels
+ * @constructor
+ * @param {google.container.v1.IResourceLabels=} [properties] Properties to set
+ */
+ function ResourceLabels(properties) {
+ this.labels = {};
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ResourceLabels labels.
+ * @member {Object.} labels
+ * @memberof google.container.v1.ResourceLabels
+ * @instance
+ */
+ ResourceLabels.prototype.labels = $util.emptyObject;
+
+ /**
+ * Creates a new ResourceLabels instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {google.container.v1.IResourceLabels=} [properties] Properties to set
+ * @returns {google.container.v1.ResourceLabels} ResourceLabels instance
+ */
+ ResourceLabels.create = function create(properties) {
+ return new ResourceLabels(properties);
+ };
+
+ /**
+ * Encodes the specified ResourceLabels message. Does not implicitly {@link google.container.v1.ResourceLabels.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {google.container.v1.IResourceLabels} message ResourceLabels message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ResourceLabels.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
+ for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ResourceLabels message, length delimited. Does not implicitly {@link google.container.v1.ResourceLabels.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {google.container.v1.IResourceLabels} message ResourceLabels message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ResourceLabels.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ResourceLabels message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.ResourceLabels} ResourceLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ResourceLabels.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.ResourceLabels(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (message.labels === $util.emptyObject)
+ message.labels = {};
+ 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.labels[key] = value;
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ResourceLabels message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.ResourceLabels} ResourceLabels
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ResourceLabels.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ResourceLabels message.
+ * @function verify
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ResourceLabels.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!$util.isObject(message.labels))
+ return "labels: object expected";
+ var key = Object.keys(message.labels);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.labels[key[i]]))
+ return "labels: string{k:string} expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ResourceLabels message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.ResourceLabels} ResourceLabels
+ */
+ ResourceLabels.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.ResourceLabels)
+ return object;
+ var message = new $root.google.container.v1.ResourceLabels();
+ if (object.labels) {
+ if (typeof object.labels !== "object")
+ throw TypeError(".google.container.v1.ResourceLabels.labels: object expected");
+ message.labels = {};
+ for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
+ message.labels[keys[i]] = String(object.labels[keys[i]]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ResourceLabels message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {google.container.v1.ResourceLabels} message ResourceLabels
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ResourceLabels.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.labels = {};
+ var keys2;
+ if (message.labels && (keys2 = Object.keys(message.labels)).length) {
+ object.labels = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.labels[keys2[j]] = message.labels[keys2[j]];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ResourceLabels to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.ResourceLabels
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ResourceLabels.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ResourceLabels
+ * @function getTypeUrl
+ * @memberof google.container.v1.ResourceLabels
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ResourceLabels.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.ResourceLabels";
+ };
+
+ return ResourceLabels;
+ })();
+
+ v1.NetworkTags = (function() {
+
+ /**
+ * Properties of a NetworkTags.
+ * @memberof google.container.v1
+ * @interface INetworkTags
+ * @property {Array.|null} [tags] NetworkTags tags
+ */
+
+ /**
+ * Constructs a new NetworkTags.
+ * @memberof google.container.v1
+ * @classdesc Represents a NetworkTags.
+ * @implements INetworkTags
+ * @constructor
+ * @param {google.container.v1.INetworkTags=} [properties] Properties to set
+ */
+ function NetworkTags(properties) {
+ this.tags = [];
+ 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]];
+ }
+
+ /**
+ * NetworkTags tags.
+ * @member {Array.} tags
+ * @memberof google.container.v1.NetworkTags
+ * @instance
+ */
+ NetworkTags.prototype.tags = $util.emptyArray;
+
+ /**
+ * Creates a new NetworkTags instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {google.container.v1.INetworkTags=} [properties] Properties to set
+ * @returns {google.container.v1.NetworkTags} NetworkTags instance
+ */
+ NetworkTags.create = function create(properties) {
+ return new NetworkTags(properties);
+ };
+
+ /**
+ * Encodes the specified NetworkTags message. Does not implicitly {@link google.container.v1.NetworkTags.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {google.container.v1.INetworkTags} message NetworkTags message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkTags.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.tags != null && message.tags.length)
+ for (var i = 0; i < message.tags.length; ++i)
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.tags[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NetworkTags message, length delimited. Does not implicitly {@link google.container.v1.NetworkTags.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {google.container.v1.INetworkTags} message NetworkTags message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkTags.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NetworkTags message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NetworkTags} NetworkTags
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkTags.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NetworkTags();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.tags && message.tags.length))
+ message.tags = [];
+ message.tags.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NetworkTags message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NetworkTags} NetworkTags
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkTags.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NetworkTags message.
+ * @function verify
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NetworkTags.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.tags != null && message.hasOwnProperty("tags")) {
+ if (!Array.isArray(message.tags))
+ return "tags: array expected";
+ for (var i = 0; i < message.tags.length; ++i)
+ if (!$util.isString(message.tags[i]))
+ return "tags: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a NetworkTags message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NetworkTags} NetworkTags
+ */
+ NetworkTags.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NetworkTags)
+ return object;
+ var message = new $root.google.container.v1.NetworkTags();
+ if (object.tags) {
+ if (!Array.isArray(object.tags))
+ throw TypeError(".google.container.v1.NetworkTags.tags: array expected");
+ message.tags = [];
+ for (var i = 0; i < object.tags.length; ++i)
+ message.tags[i] = String(object.tags[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NetworkTags message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {google.container.v1.NetworkTags} message NetworkTags
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NetworkTags.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.tags = [];
+ if (message.tags && message.tags.length) {
+ object.tags = [];
+ for (var j = 0; j < message.tags.length; ++j)
+ object.tags[j] = message.tags[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this NetworkTags to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NetworkTags
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NetworkTags.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NetworkTags
+ * @function getTypeUrl
+ * @memberof google.container.v1.NetworkTags
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NetworkTags.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NetworkTags";
+ };
+
+ return NetworkTags;
+ })();
+
+ v1.MasterAuth = (function() {
+
+ /**
+ * Properties of a MasterAuth.
+ * @memberof google.container.v1
+ * @interface IMasterAuth
+ * @property {string|null} [username] MasterAuth username
+ * @property {string|null} [password] MasterAuth password
+ * @property {google.container.v1.IClientCertificateConfig|null} [clientCertificateConfig] MasterAuth clientCertificateConfig
+ * @property {string|null} [clusterCaCertificate] MasterAuth clusterCaCertificate
+ * @property {string|null} [clientCertificate] MasterAuth clientCertificate
+ * @property {string|null} [clientKey] MasterAuth clientKey
+ */
+
+ /**
+ * Constructs a new MasterAuth.
+ * @memberof google.container.v1
+ * @classdesc Represents a MasterAuth.
+ * @implements IMasterAuth
+ * @constructor
+ * @param {google.container.v1.IMasterAuth=} [properties] Properties to set
+ */
+ function MasterAuth(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]];
+ }
+
+ /**
+ * MasterAuth username.
+ * @member {string} username
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ */
+ MasterAuth.prototype.username = "";
+
+ /**
+ * MasterAuth password.
+ * @member {string} password
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ */
+ MasterAuth.prototype.password = "";
+
+ /**
+ * MasterAuth clientCertificateConfig.
+ * @member {google.container.v1.IClientCertificateConfig|null|undefined} clientCertificateConfig
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ */
+ MasterAuth.prototype.clientCertificateConfig = null;
+
+ /**
+ * MasterAuth clusterCaCertificate.
+ * @member {string} clusterCaCertificate
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ */
+ MasterAuth.prototype.clusterCaCertificate = "";
+
+ /**
+ * MasterAuth clientCertificate.
+ * @member {string} clientCertificate
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ */
+ MasterAuth.prototype.clientCertificate = "";
+
+ /**
+ * MasterAuth clientKey.
+ * @member {string} clientKey
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ */
+ MasterAuth.prototype.clientKey = "";
+
+ /**
+ * Creates a new MasterAuth instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {google.container.v1.IMasterAuth=} [properties] Properties to set
+ * @returns {google.container.v1.MasterAuth} MasterAuth instance
+ */
+ MasterAuth.create = function create(properties) {
+ return new MasterAuth(properties);
+ };
+
+ /**
+ * Encodes the specified MasterAuth message. Does not implicitly {@link google.container.v1.MasterAuth.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {google.container.v1.IMasterAuth} message MasterAuth message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ MasterAuth.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.username != null && Object.hasOwnProperty.call(message, "username"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.username);
+ if (message.password != null && Object.hasOwnProperty.call(message, "password"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.password);
+ if (message.clientCertificateConfig != null && Object.hasOwnProperty.call(message, "clientCertificateConfig"))
+ $root.google.container.v1.ClientCertificateConfig.encode(message.clientCertificateConfig, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.clusterCaCertificate != null && Object.hasOwnProperty.call(message, "clusterCaCertificate"))
+ writer.uint32(/* id 100, wireType 2 =*/802).string(message.clusterCaCertificate);
+ if (message.clientCertificate != null && Object.hasOwnProperty.call(message, "clientCertificate"))
+ writer.uint32(/* id 101, wireType 2 =*/810).string(message.clientCertificate);
+ if (message.clientKey != null && Object.hasOwnProperty.call(message, "clientKey"))
+ writer.uint32(/* id 102, wireType 2 =*/818).string(message.clientKey);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified MasterAuth message, length delimited. Does not implicitly {@link google.container.v1.MasterAuth.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {google.container.v1.IMasterAuth} message MasterAuth message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ MasterAuth.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a MasterAuth message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.MasterAuth} MasterAuth
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ MasterAuth.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.MasterAuth();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.username = reader.string();
+ break;
+ }
+ case 2: {
+ message.password = reader.string();
+ break;
+ }
+ case 3: {
+ message.clientCertificateConfig = $root.google.container.v1.ClientCertificateConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 100: {
+ message.clusterCaCertificate = reader.string();
+ break;
+ }
+ case 101: {
+ message.clientCertificate = reader.string();
+ break;
+ }
+ case 102: {
+ message.clientKey = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a MasterAuth message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.MasterAuth} MasterAuth
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ MasterAuth.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a MasterAuth message.
+ * @function verify
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ MasterAuth.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.username != null && message.hasOwnProperty("username"))
+ if (!$util.isString(message.username))
+ return "username: string expected";
+ if (message.password != null && message.hasOwnProperty("password"))
+ if (!$util.isString(message.password))
+ return "password: string expected";
+ if (message.clientCertificateConfig != null && message.hasOwnProperty("clientCertificateConfig")) {
+ var error = $root.google.container.v1.ClientCertificateConfig.verify(message.clientCertificateConfig);
+ if (error)
+ return "clientCertificateConfig." + error;
+ }
+ if (message.clusterCaCertificate != null && message.hasOwnProperty("clusterCaCertificate"))
+ if (!$util.isString(message.clusterCaCertificate))
+ return "clusterCaCertificate: string expected";
+ if (message.clientCertificate != null && message.hasOwnProperty("clientCertificate"))
+ if (!$util.isString(message.clientCertificate))
+ return "clientCertificate: string expected";
+ if (message.clientKey != null && message.hasOwnProperty("clientKey"))
+ if (!$util.isString(message.clientKey))
+ return "clientKey: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a MasterAuth message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.MasterAuth} MasterAuth
+ */
+ MasterAuth.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.MasterAuth)
+ return object;
+ var message = new $root.google.container.v1.MasterAuth();
+ if (object.username != null)
+ message.username = String(object.username);
+ if (object.password != null)
+ message.password = String(object.password);
+ if (object.clientCertificateConfig != null) {
+ if (typeof object.clientCertificateConfig !== "object")
+ throw TypeError(".google.container.v1.MasterAuth.clientCertificateConfig: object expected");
+ message.clientCertificateConfig = $root.google.container.v1.ClientCertificateConfig.fromObject(object.clientCertificateConfig);
+ }
+ if (object.clusterCaCertificate != null)
+ message.clusterCaCertificate = String(object.clusterCaCertificate);
+ if (object.clientCertificate != null)
+ message.clientCertificate = String(object.clientCertificate);
+ if (object.clientKey != null)
+ message.clientKey = String(object.clientKey);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a MasterAuth message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {google.container.v1.MasterAuth} message MasterAuth
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ MasterAuth.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.username = "";
+ object.password = "";
+ object.clientCertificateConfig = null;
+ object.clusterCaCertificate = "";
+ object.clientCertificate = "";
+ object.clientKey = "";
+ }
+ if (message.username != null && message.hasOwnProperty("username"))
+ object.username = message.username;
+ if (message.password != null && message.hasOwnProperty("password"))
+ object.password = message.password;
+ if (message.clientCertificateConfig != null && message.hasOwnProperty("clientCertificateConfig"))
+ object.clientCertificateConfig = $root.google.container.v1.ClientCertificateConfig.toObject(message.clientCertificateConfig, options);
+ if (message.clusterCaCertificate != null && message.hasOwnProperty("clusterCaCertificate"))
+ object.clusterCaCertificate = message.clusterCaCertificate;
+ if (message.clientCertificate != null && message.hasOwnProperty("clientCertificate"))
+ object.clientCertificate = message.clientCertificate;
+ if (message.clientKey != null && message.hasOwnProperty("clientKey"))
+ object.clientKey = message.clientKey;
+ return object;
+ };
+
+ /**
+ * Converts this MasterAuth to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.MasterAuth
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ MasterAuth.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for MasterAuth
+ * @function getTypeUrl
+ * @memberof google.container.v1.MasterAuth
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ MasterAuth.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.MasterAuth";
+ };
+
+ return MasterAuth;
+ })();
+
+ v1.ClientCertificateConfig = (function() {
+
+ /**
+ * Properties of a ClientCertificateConfig.
+ * @memberof google.container.v1
+ * @interface IClientCertificateConfig
+ * @property {boolean|null} [issueClientCertificate] ClientCertificateConfig issueClientCertificate
+ */
+
+ /**
+ * Constructs a new ClientCertificateConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a ClientCertificateConfig.
+ * @implements IClientCertificateConfig
+ * @constructor
+ * @param {google.container.v1.IClientCertificateConfig=} [properties] Properties to set
+ */
+ function ClientCertificateConfig(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]];
+ }
+
+ /**
+ * ClientCertificateConfig issueClientCertificate.
+ * @member {boolean} issueClientCertificate
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @instance
+ */
+ ClientCertificateConfig.prototype.issueClientCertificate = false;
+
+ /**
+ * Creates a new ClientCertificateConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {google.container.v1.IClientCertificateConfig=} [properties] Properties to set
+ * @returns {google.container.v1.ClientCertificateConfig} ClientCertificateConfig instance
+ */
+ ClientCertificateConfig.create = function create(properties) {
+ return new ClientCertificateConfig(properties);
+ };
+
+ /**
+ * Encodes the specified ClientCertificateConfig message. Does not implicitly {@link google.container.v1.ClientCertificateConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {google.container.v1.IClientCertificateConfig} message ClientCertificateConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ClientCertificateConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.issueClientCertificate != null && Object.hasOwnProperty.call(message, "issueClientCertificate"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.issueClientCertificate);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ClientCertificateConfig message, length delimited. Does not implicitly {@link google.container.v1.ClientCertificateConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {google.container.v1.IClientCertificateConfig} message ClientCertificateConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ClientCertificateConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ClientCertificateConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.ClientCertificateConfig} ClientCertificateConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ClientCertificateConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.ClientCertificateConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.issueClientCertificate = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ClientCertificateConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.ClientCertificateConfig} ClientCertificateConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ClientCertificateConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ClientCertificateConfig message.
+ * @function verify
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ClientCertificateConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.issueClientCertificate != null && message.hasOwnProperty("issueClientCertificate"))
+ if (typeof message.issueClientCertificate !== "boolean")
+ return "issueClientCertificate: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a ClientCertificateConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.ClientCertificateConfig} ClientCertificateConfig
+ */
+ ClientCertificateConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.ClientCertificateConfig)
+ return object;
+ var message = new $root.google.container.v1.ClientCertificateConfig();
+ if (object.issueClientCertificate != null)
+ message.issueClientCertificate = Boolean(object.issueClientCertificate);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ClientCertificateConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {google.container.v1.ClientCertificateConfig} message ClientCertificateConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ClientCertificateConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.issueClientCertificate = false;
+ if (message.issueClientCertificate != null && message.hasOwnProperty("issueClientCertificate"))
+ object.issueClientCertificate = message.issueClientCertificate;
+ return object;
+ };
+
+ /**
+ * Converts this ClientCertificateConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ClientCertificateConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ClientCertificateConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.ClientCertificateConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ClientCertificateConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.ClientCertificateConfig";
+ };
+
+ return ClientCertificateConfig;
+ })();
+
+ v1.AddonsConfig = (function() {
+
+ /**
+ * Properties of an AddonsConfig.
+ * @memberof google.container.v1
+ * @interface IAddonsConfig
+ * @property {google.container.v1.IHttpLoadBalancing|null} [httpLoadBalancing] AddonsConfig httpLoadBalancing
+ * @property {google.container.v1.IHorizontalPodAutoscaling|null} [horizontalPodAutoscaling] AddonsConfig horizontalPodAutoscaling
+ * @property {google.container.v1.IKubernetesDashboard|null} [kubernetesDashboard] AddonsConfig kubernetesDashboard
+ * @property {google.container.v1.INetworkPolicyConfig|null} [networkPolicyConfig] AddonsConfig networkPolicyConfig
+ * @property {google.container.v1.ICloudRunConfig|null} [cloudRunConfig] AddonsConfig cloudRunConfig
+ * @property {google.container.v1.IDnsCacheConfig|null} [dnsCacheConfig] AddonsConfig dnsCacheConfig
+ * @property {google.container.v1.IConfigConnectorConfig|null} [configConnectorConfig] AddonsConfig configConnectorConfig
+ * @property {google.container.v1.IGcePersistentDiskCsiDriverConfig|null} [gcePersistentDiskCsiDriverConfig] AddonsConfig gcePersistentDiskCsiDriverConfig
+ * @property {google.container.v1.IGcpFilestoreCsiDriverConfig|null} [gcpFilestoreCsiDriverConfig] AddonsConfig gcpFilestoreCsiDriverConfig
+ * @property {google.container.v1.IGkeBackupAgentConfig|null} [gkeBackupAgentConfig] AddonsConfig gkeBackupAgentConfig
+ */
+
+ /**
+ * Constructs a new AddonsConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents an AddonsConfig.
+ * @implements IAddonsConfig
+ * @constructor
+ * @param {google.container.v1.IAddonsConfig=} [properties] Properties to set
+ */
+ function AddonsConfig(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]];
+ }
+
+ /**
+ * AddonsConfig httpLoadBalancing.
+ * @member {google.container.v1.IHttpLoadBalancing|null|undefined} httpLoadBalancing
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.httpLoadBalancing = null;
+
+ /**
+ * AddonsConfig horizontalPodAutoscaling.
+ * @member {google.container.v1.IHorizontalPodAutoscaling|null|undefined} horizontalPodAutoscaling
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.horizontalPodAutoscaling = null;
+
+ /**
+ * AddonsConfig kubernetesDashboard.
+ * @member {google.container.v1.IKubernetesDashboard|null|undefined} kubernetesDashboard
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.kubernetesDashboard = null;
+
+ /**
+ * AddonsConfig networkPolicyConfig.
+ * @member {google.container.v1.INetworkPolicyConfig|null|undefined} networkPolicyConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.networkPolicyConfig = null;
+
+ /**
+ * AddonsConfig cloudRunConfig.
+ * @member {google.container.v1.ICloudRunConfig|null|undefined} cloudRunConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.cloudRunConfig = null;
+
+ /**
+ * AddonsConfig dnsCacheConfig.
+ * @member {google.container.v1.IDnsCacheConfig|null|undefined} dnsCacheConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.dnsCacheConfig = null;
+
+ /**
+ * AddonsConfig configConnectorConfig.
+ * @member {google.container.v1.IConfigConnectorConfig|null|undefined} configConnectorConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.configConnectorConfig = null;
+
+ /**
+ * AddonsConfig gcePersistentDiskCsiDriverConfig.
+ * @member {google.container.v1.IGcePersistentDiskCsiDriverConfig|null|undefined} gcePersistentDiskCsiDriverConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.gcePersistentDiskCsiDriverConfig = null;
+
+ /**
+ * AddonsConfig gcpFilestoreCsiDriverConfig.
+ * @member {google.container.v1.IGcpFilestoreCsiDriverConfig|null|undefined} gcpFilestoreCsiDriverConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.gcpFilestoreCsiDriverConfig = null;
+
+ /**
+ * AddonsConfig gkeBackupAgentConfig.
+ * @member {google.container.v1.IGkeBackupAgentConfig|null|undefined} gkeBackupAgentConfig
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ */
+ AddonsConfig.prototype.gkeBackupAgentConfig = null;
+
+ /**
+ * Creates a new AddonsConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {google.container.v1.IAddonsConfig=} [properties] Properties to set
+ * @returns {google.container.v1.AddonsConfig} AddonsConfig instance
+ */
+ AddonsConfig.create = function create(properties) {
+ return new AddonsConfig(properties);
+ };
+
+ /**
+ * Encodes the specified AddonsConfig message. Does not implicitly {@link google.container.v1.AddonsConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {google.container.v1.IAddonsConfig} message AddonsConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AddonsConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.httpLoadBalancing != null && Object.hasOwnProperty.call(message, "httpLoadBalancing"))
+ $root.google.container.v1.HttpLoadBalancing.encode(message.httpLoadBalancing, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.horizontalPodAutoscaling != null && Object.hasOwnProperty.call(message, "horizontalPodAutoscaling"))
+ $root.google.container.v1.HorizontalPodAutoscaling.encode(message.horizontalPodAutoscaling, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.kubernetesDashboard != null && Object.hasOwnProperty.call(message, "kubernetesDashboard"))
+ $root.google.container.v1.KubernetesDashboard.encode(message.kubernetesDashboard, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.networkPolicyConfig != null && Object.hasOwnProperty.call(message, "networkPolicyConfig"))
+ $root.google.container.v1.NetworkPolicyConfig.encode(message.networkPolicyConfig, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ if (message.cloudRunConfig != null && Object.hasOwnProperty.call(message, "cloudRunConfig"))
+ $root.google.container.v1.CloudRunConfig.encode(message.cloudRunConfig, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
+ if (message.dnsCacheConfig != null && Object.hasOwnProperty.call(message, "dnsCacheConfig"))
+ $root.google.container.v1.DnsCacheConfig.encode(message.dnsCacheConfig, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
+ if (message.configConnectorConfig != null && Object.hasOwnProperty.call(message, "configConnectorConfig"))
+ $root.google.container.v1.ConfigConnectorConfig.encode(message.configConnectorConfig, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
+ if (message.gcePersistentDiskCsiDriverConfig != null && Object.hasOwnProperty.call(message, "gcePersistentDiskCsiDriverConfig"))
+ $root.google.container.v1.GcePersistentDiskCsiDriverConfig.encode(message.gcePersistentDiskCsiDriverConfig, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
+ if (message.gcpFilestoreCsiDriverConfig != null && Object.hasOwnProperty.call(message, "gcpFilestoreCsiDriverConfig"))
+ $root.google.container.v1.GcpFilestoreCsiDriverConfig.encode(message.gcpFilestoreCsiDriverConfig, writer.uint32(/* id 14, wireType 2 =*/114).fork()).ldelim();
+ if (message.gkeBackupAgentConfig != null && Object.hasOwnProperty.call(message, "gkeBackupAgentConfig"))
+ $root.google.container.v1.GkeBackupAgentConfig.encode(message.gkeBackupAgentConfig, writer.uint32(/* id 16, wireType 2 =*/130).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AddonsConfig message, length delimited. Does not implicitly {@link google.container.v1.AddonsConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {google.container.v1.IAddonsConfig} message AddonsConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AddonsConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AddonsConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.AddonsConfig} AddonsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AddonsConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.AddonsConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.httpLoadBalancing = $root.google.container.v1.HttpLoadBalancing.decode(reader, reader.uint32());
+ break;
+ }
+ case 2: {
+ message.horizontalPodAutoscaling = $root.google.container.v1.HorizontalPodAutoscaling.decode(reader, reader.uint32());
+ break;
+ }
+ case 3: {
+ message.kubernetesDashboard = $root.google.container.v1.KubernetesDashboard.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.networkPolicyConfig = $root.google.container.v1.NetworkPolicyConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 7: {
+ message.cloudRunConfig = $root.google.container.v1.CloudRunConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 8: {
+ message.dnsCacheConfig = $root.google.container.v1.DnsCacheConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 10: {
+ message.configConnectorConfig = $root.google.container.v1.ConfigConnectorConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 11: {
+ message.gcePersistentDiskCsiDriverConfig = $root.google.container.v1.GcePersistentDiskCsiDriverConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 14: {
+ message.gcpFilestoreCsiDriverConfig = $root.google.container.v1.GcpFilestoreCsiDriverConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 16: {
+ message.gkeBackupAgentConfig = $root.google.container.v1.GkeBackupAgentConfig.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AddonsConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.AddonsConfig} AddonsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AddonsConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AddonsConfig message.
+ * @function verify
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AddonsConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.httpLoadBalancing != null && message.hasOwnProperty("httpLoadBalancing")) {
+ var error = $root.google.container.v1.HttpLoadBalancing.verify(message.httpLoadBalancing);
+ if (error)
+ return "httpLoadBalancing." + error;
+ }
+ if (message.horizontalPodAutoscaling != null && message.hasOwnProperty("horizontalPodAutoscaling")) {
+ var error = $root.google.container.v1.HorizontalPodAutoscaling.verify(message.horizontalPodAutoscaling);
+ if (error)
+ return "horizontalPodAutoscaling." + error;
+ }
+ if (message.kubernetesDashboard != null && message.hasOwnProperty("kubernetesDashboard")) {
+ var error = $root.google.container.v1.KubernetesDashboard.verify(message.kubernetesDashboard);
+ if (error)
+ return "kubernetesDashboard." + error;
+ }
+ if (message.networkPolicyConfig != null && message.hasOwnProperty("networkPolicyConfig")) {
+ var error = $root.google.container.v1.NetworkPolicyConfig.verify(message.networkPolicyConfig);
+ if (error)
+ return "networkPolicyConfig." + error;
+ }
+ if (message.cloudRunConfig != null && message.hasOwnProperty("cloudRunConfig")) {
+ var error = $root.google.container.v1.CloudRunConfig.verify(message.cloudRunConfig);
+ if (error)
+ return "cloudRunConfig." + error;
+ }
+ if (message.dnsCacheConfig != null && message.hasOwnProperty("dnsCacheConfig")) {
+ var error = $root.google.container.v1.DnsCacheConfig.verify(message.dnsCacheConfig);
+ if (error)
+ return "dnsCacheConfig." + error;
+ }
+ if (message.configConnectorConfig != null && message.hasOwnProperty("configConnectorConfig")) {
+ var error = $root.google.container.v1.ConfigConnectorConfig.verify(message.configConnectorConfig);
+ if (error)
+ return "configConnectorConfig." + error;
+ }
+ if (message.gcePersistentDiskCsiDriverConfig != null && message.hasOwnProperty("gcePersistentDiskCsiDriverConfig")) {
+ var error = $root.google.container.v1.GcePersistentDiskCsiDriverConfig.verify(message.gcePersistentDiskCsiDriverConfig);
+ if (error)
+ return "gcePersistentDiskCsiDriverConfig." + error;
+ }
+ if (message.gcpFilestoreCsiDriverConfig != null && message.hasOwnProperty("gcpFilestoreCsiDriverConfig")) {
+ var error = $root.google.container.v1.GcpFilestoreCsiDriverConfig.verify(message.gcpFilestoreCsiDriverConfig);
+ if (error)
+ return "gcpFilestoreCsiDriverConfig." + error;
+ }
+ if (message.gkeBackupAgentConfig != null && message.hasOwnProperty("gkeBackupAgentConfig")) {
+ var error = $root.google.container.v1.GkeBackupAgentConfig.verify(message.gkeBackupAgentConfig);
+ if (error)
+ return "gkeBackupAgentConfig." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an AddonsConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.AddonsConfig} AddonsConfig
+ */
+ AddonsConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.AddonsConfig)
+ return object;
+ var message = new $root.google.container.v1.AddonsConfig();
+ if (object.httpLoadBalancing != null) {
+ if (typeof object.httpLoadBalancing !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.httpLoadBalancing: object expected");
+ message.httpLoadBalancing = $root.google.container.v1.HttpLoadBalancing.fromObject(object.httpLoadBalancing);
+ }
+ if (object.horizontalPodAutoscaling != null) {
+ if (typeof object.horizontalPodAutoscaling !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.horizontalPodAutoscaling: object expected");
+ message.horizontalPodAutoscaling = $root.google.container.v1.HorizontalPodAutoscaling.fromObject(object.horizontalPodAutoscaling);
+ }
+ if (object.kubernetesDashboard != null) {
+ if (typeof object.kubernetesDashboard !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.kubernetesDashboard: object expected");
+ message.kubernetesDashboard = $root.google.container.v1.KubernetesDashboard.fromObject(object.kubernetesDashboard);
+ }
+ if (object.networkPolicyConfig != null) {
+ if (typeof object.networkPolicyConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.networkPolicyConfig: object expected");
+ message.networkPolicyConfig = $root.google.container.v1.NetworkPolicyConfig.fromObject(object.networkPolicyConfig);
+ }
+ if (object.cloudRunConfig != null) {
+ if (typeof object.cloudRunConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.cloudRunConfig: object expected");
+ message.cloudRunConfig = $root.google.container.v1.CloudRunConfig.fromObject(object.cloudRunConfig);
+ }
+ if (object.dnsCacheConfig != null) {
+ if (typeof object.dnsCacheConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.dnsCacheConfig: object expected");
+ message.dnsCacheConfig = $root.google.container.v1.DnsCacheConfig.fromObject(object.dnsCacheConfig);
+ }
+ if (object.configConnectorConfig != null) {
+ if (typeof object.configConnectorConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.configConnectorConfig: object expected");
+ message.configConnectorConfig = $root.google.container.v1.ConfigConnectorConfig.fromObject(object.configConnectorConfig);
+ }
+ if (object.gcePersistentDiskCsiDriverConfig != null) {
+ if (typeof object.gcePersistentDiskCsiDriverConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.gcePersistentDiskCsiDriverConfig: object expected");
+ message.gcePersistentDiskCsiDriverConfig = $root.google.container.v1.GcePersistentDiskCsiDriverConfig.fromObject(object.gcePersistentDiskCsiDriverConfig);
+ }
+ if (object.gcpFilestoreCsiDriverConfig != null) {
+ if (typeof object.gcpFilestoreCsiDriverConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.gcpFilestoreCsiDriverConfig: object expected");
+ message.gcpFilestoreCsiDriverConfig = $root.google.container.v1.GcpFilestoreCsiDriverConfig.fromObject(object.gcpFilestoreCsiDriverConfig);
+ }
+ if (object.gkeBackupAgentConfig != null) {
+ if (typeof object.gkeBackupAgentConfig !== "object")
+ throw TypeError(".google.container.v1.AddonsConfig.gkeBackupAgentConfig: object expected");
+ message.gkeBackupAgentConfig = $root.google.container.v1.GkeBackupAgentConfig.fromObject(object.gkeBackupAgentConfig);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AddonsConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {google.container.v1.AddonsConfig} message AddonsConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AddonsConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.httpLoadBalancing = null;
+ object.horizontalPodAutoscaling = null;
+ object.kubernetesDashboard = null;
+ object.networkPolicyConfig = null;
+ object.cloudRunConfig = null;
+ object.dnsCacheConfig = null;
+ object.configConnectorConfig = null;
+ object.gcePersistentDiskCsiDriverConfig = null;
+ object.gcpFilestoreCsiDriverConfig = null;
+ object.gkeBackupAgentConfig = null;
+ }
+ if (message.httpLoadBalancing != null && message.hasOwnProperty("httpLoadBalancing"))
+ object.httpLoadBalancing = $root.google.container.v1.HttpLoadBalancing.toObject(message.httpLoadBalancing, options);
+ if (message.horizontalPodAutoscaling != null && message.hasOwnProperty("horizontalPodAutoscaling"))
+ object.horizontalPodAutoscaling = $root.google.container.v1.HorizontalPodAutoscaling.toObject(message.horizontalPodAutoscaling, options);
+ if (message.kubernetesDashboard != null && message.hasOwnProperty("kubernetesDashboard"))
+ object.kubernetesDashboard = $root.google.container.v1.KubernetesDashboard.toObject(message.kubernetesDashboard, options);
+ if (message.networkPolicyConfig != null && message.hasOwnProperty("networkPolicyConfig"))
+ object.networkPolicyConfig = $root.google.container.v1.NetworkPolicyConfig.toObject(message.networkPolicyConfig, options);
+ if (message.cloudRunConfig != null && message.hasOwnProperty("cloudRunConfig"))
+ object.cloudRunConfig = $root.google.container.v1.CloudRunConfig.toObject(message.cloudRunConfig, options);
+ if (message.dnsCacheConfig != null && message.hasOwnProperty("dnsCacheConfig"))
+ object.dnsCacheConfig = $root.google.container.v1.DnsCacheConfig.toObject(message.dnsCacheConfig, options);
+ if (message.configConnectorConfig != null && message.hasOwnProperty("configConnectorConfig"))
+ object.configConnectorConfig = $root.google.container.v1.ConfigConnectorConfig.toObject(message.configConnectorConfig, options);
+ if (message.gcePersistentDiskCsiDriverConfig != null && message.hasOwnProperty("gcePersistentDiskCsiDriverConfig"))
+ object.gcePersistentDiskCsiDriverConfig = $root.google.container.v1.GcePersistentDiskCsiDriverConfig.toObject(message.gcePersistentDiskCsiDriverConfig, options);
+ if (message.gcpFilestoreCsiDriverConfig != null && message.hasOwnProperty("gcpFilestoreCsiDriverConfig"))
+ object.gcpFilestoreCsiDriverConfig = $root.google.container.v1.GcpFilestoreCsiDriverConfig.toObject(message.gcpFilestoreCsiDriverConfig, options);
+ if (message.gkeBackupAgentConfig != null && message.hasOwnProperty("gkeBackupAgentConfig"))
+ object.gkeBackupAgentConfig = $root.google.container.v1.GkeBackupAgentConfig.toObject(message.gkeBackupAgentConfig, options);
+ return object;
+ };
+
+ /**
+ * Converts this AddonsConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.AddonsConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AddonsConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AddonsConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.AddonsConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AddonsConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.AddonsConfig";
+ };
+
+ return AddonsConfig;
+ })();
+
+ v1.HttpLoadBalancing = (function() {
+
+ /**
+ * Properties of a HttpLoadBalancing.
+ * @memberof google.container.v1
+ * @interface IHttpLoadBalancing
+ * @property {boolean|null} [disabled] HttpLoadBalancing disabled
+ */
+
+ /**
+ * Constructs a new HttpLoadBalancing.
+ * @memberof google.container.v1
+ * @classdesc Represents a HttpLoadBalancing.
+ * @implements IHttpLoadBalancing
+ * @constructor
+ * @param {google.container.v1.IHttpLoadBalancing=} [properties] Properties to set
+ */
+ function HttpLoadBalancing(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]];
+ }
+
+ /**
+ * HttpLoadBalancing disabled.
+ * @member {boolean} disabled
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @instance
+ */
+ HttpLoadBalancing.prototype.disabled = false;
+
+ /**
+ * Creates a new HttpLoadBalancing instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {google.container.v1.IHttpLoadBalancing=} [properties] Properties to set
+ * @returns {google.container.v1.HttpLoadBalancing} HttpLoadBalancing instance
+ */
+ HttpLoadBalancing.create = function create(properties) {
+ return new HttpLoadBalancing(properties);
+ };
+
+ /**
+ * Encodes the specified HttpLoadBalancing message. Does not implicitly {@link google.container.v1.HttpLoadBalancing.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {google.container.v1.IHttpLoadBalancing} message HttpLoadBalancing message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ HttpLoadBalancing.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.disabled != null && Object.hasOwnProperty.call(message, "disabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.disabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified HttpLoadBalancing message, length delimited. Does not implicitly {@link google.container.v1.HttpLoadBalancing.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {google.container.v1.IHttpLoadBalancing} message HttpLoadBalancing message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ HttpLoadBalancing.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a HttpLoadBalancing message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.HttpLoadBalancing} HttpLoadBalancing
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ HttpLoadBalancing.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.HttpLoadBalancing();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.disabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a HttpLoadBalancing message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.HttpLoadBalancing} HttpLoadBalancing
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ HttpLoadBalancing.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a HttpLoadBalancing message.
+ * @function verify
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ HttpLoadBalancing.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ if (typeof message.disabled !== "boolean")
+ return "disabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a HttpLoadBalancing message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.HttpLoadBalancing} HttpLoadBalancing
+ */
+ HttpLoadBalancing.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.HttpLoadBalancing)
+ return object;
+ var message = new $root.google.container.v1.HttpLoadBalancing();
+ if (object.disabled != null)
+ message.disabled = Boolean(object.disabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a HttpLoadBalancing message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {google.container.v1.HttpLoadBalancing} message HttpLoadBalancing
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ HttpLoadBalancing.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.disabled = false;
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ object.disabled = message.disabled;
+ return object;
+ };
+
+ /**
+ * Converts this HttpLoadBalancing to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ HttpLoadBalancing.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for HttpLoadBalancing
+ * @function getTypeUrl
+ * @memberof google.container.v1.HttpLoadBalancing
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ HttpLoadBalancing.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.HttpLoadBalancing";
+ };
+
+ return HttpLoadBalancing;
+ })();
+
+ v1.HorizontalPodAutoscaling = (function() {
+
+ /**
+ * Properties of a HorizontalPodAutoscaling.
+ * @memberof google.container.v1
+ * @interface IHorizontalPodAutoscaling
+ * @property {boolean|null} [disabled] HorizontalPodAutoscaling disabled
+ */
+
+ /**
+ * Constructs a new HorizontalPodAutoscaling.
+ * @memberof google.container.v1
+ * @classdesc Represents a HorizontalPodAutoscaling.
+ * @implements IHorizontalPodAutoscaling
+ * @constructor
+ * @param {google.container.v1.IHorizontalPodAutoscaling=} [properties] Properties to set
+ */
+ function HorizontalPodAutoscaling(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]];
+ }
+
+ /**
+ * HorizontalPodAutoscaling disabled.
+ * @member {boolean} disabled
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @instance
+ */
+ HorizontalPodAutoscaling.prototype.disabled = false;
+
+ /**
+ * Creates a new HorizontalPodAutoscaling instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {google.container.v1.IHorizontalPodAutoscaling=} [properties] Properties to set
+ * @returns {google.container.v1.HorizontalPodAutoscaling} HorizontalPodAutoscaling instance
+ */
+ HorizontalPodAutoscaling.create = function create(properties) {
+ return new HorizontalPodAutoscaling(properties);
+ };
+
+ /**
+ * Encodes the specified HorizontalPodAutoscaling message. Does not implicitly {@link google.container.v1.HorizontalPodAutoscaling.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {google.container.v1.IHorizontalPodAutoscaling} message HorizontalPodAutoscaling message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ HorizontalPodAutoscaling.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.disabled != null && Object.hasOwnProperty.call(message, "disabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.disabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified HorizontalPodAutoscaling message, length delimited. Does not implicitly {@link google.container.v1.HorizontalPodAutoscaling.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {google.container.v1.IHorizontalPodAutoscaling} message HorizontalPodAutoscaling message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ HorizontalPodAutoscaling.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a HorizontalPodAutoscaling message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.HorizontalPodAutoscaling} HorizontalPodAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ HorizontalPodAutoscaling.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.HorizontalPodAutoscaling();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.disabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a HorizontalPodAutoscaling message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.HorizontalPodAutoscaling} HorizontalPodAutoscaling
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ HorizontalPodAutoscaling.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a HorizontalPodAutoscaling message.
+ * @function verify
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ HorizontalPodAutoscaling.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ if (typeof message.disabled !== "boolean")
+ return "disabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a HorizontalPodAutoscaling message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.HorizontalPodAutoscaling} HorizontalPodAutoscaling
+ */
+ HorizontalPodAutoscaling.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.HorizontalPodAutoscaling)
+ return object;
+ var message = new $root.google.container.v1.HorizontalPodAutoscaling();
+ if (object.disabled != null)
+ message.disabled = Boolean(object.disabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a HorizontalPodAutoscaling message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {google.container.v1.HorizontalPodAutoscaling} message HorizontalPodAutoscaling
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ HorizontalPodAutoscaling.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.disabled = false;
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ object.disabled = message.disabled;
+ return object;
+ };
+
+ /**
+ * Converts this HorizontalPodAutoscaling to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ HorizontalPodAutoscaling.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for HorizontalPodAutoscaling
+ * @function getTypeUrl
+ * @memberof google.container.v1.HorizontalPodAutoscaling
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ HorizontalPodAutoscaling.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.HorizontalPodAutoscaling";
+ };
+
+ return HorizontalPodAutoscaling;
+ })();
+
+ v1.KubernetesDashboard = (function() {
+
+ /**
+ * Properties of a KubernetesDashboard.
+ * @memberof google.container.v1
+ * @interface IKubernetesDashboard
+ * @property {boolean|null} [disabled] KubernetesDashboard disabled
+ */
+
+ /**
+ * Constructs a new KubernetesDashboard.
+ * @memberof google.container.v1
+ * @classdesc Represents a KubernetesDashboard.
+ * @implements IKubernetesDashboard
+ * @constructor
+ * @param {google.container.v1.IKubernetesDashboard=} [properties] Properties to set
+ */
+ function KubernetesDashboard(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]];
+ }
+
+ /**
+ * KubernetesDashboard disabled.
+ * @member {boolean} disabled
+ * @memberof google.container.v1.KubernetesDashboard
+ * @instance
+ */
+ KubernetesDashboard.prototype.disabled = false;
+
+ /**
+ * Creates a new KubernetesDashboard instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {google.container.v1.IKubernetesDashboard=} [properties] Properties to set
+ * @returns {google.container.v1.KubernetesDashboard} KubernetesDashboard instance
+ */
+ KubernetesDashboard.create = function create(properties) {
+ return new KubernetesDashboard(properties);
+ };
+
+ /**
+ * Encodes the specified KubernetesDashboard message. Does not implicitly {@link google.container.v1.KubernetesDashboard.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {google.container.v1.IKubernetesDashboard} message KubernetesDashboard message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ KubernetesDashboard.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.disabled != null && Object.hasOwnProperty.call(message, "disabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.disabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified KubernetesDashboard message, length delimited. Does not implicitly {@link google.container.v1.KubernetesDashboard.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {google.container.v1.IKubernetesDashboard} message KubernetesDashboard message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ KubernetesDashboard.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a KubernetesDashboard message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.KubernetesDashboard} KubernetesDashboard
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ KubernetesDashboard.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.KubernetesDashboard();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.disabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a KubernetesDashboard message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.KubernetesDashboard} KubernetesDashboard
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ KubernetesDashboard.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a KubernetesDashboard message.
+ * @function verify
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ KubernetesDashboard.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ if (typeof message.disabled !== "boolean")
+ return "disabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a KubernetesDashboard message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.KubernetesDashboard} KubernetesDashboard
+ */
+ KubernetesDashboard.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.KubernetesDashboard)
+ return object;
+ var message = new $root.google.container.v1.KubernetesDashboard();
+ if (object.disabled != null)
+ message.disabled = Boolean(object.disabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a KubernetesDashboard message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {google.container.v1.KubernetesDashboard} message KubernetesDashboard
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ KubernetesDashboard.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.disabled = false;
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ object.disabled = message.disabled;
+ return object;
+ };
+
+ /**
+ * Converts this KubernetesDashboard to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.KubernetesDashboard
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ KubernetesDashboard.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for KubernetesDashboard
+ * @function getTypeUrl
+ * @memberof google.container.v1.KubernetesDashboard
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ KubernetesDashboard.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.KubernetesDashboard";
+ };
+
+ return KubernetesDashboard;
+ })();
+
+ v1.NetworkPolicyConfig = (function() {
+
+ /**
+ * Properties of a NetworkPolicyConfig.
+ * @memberof google.container.v1
+ * @interface INetworkPolicyConfig
+ * @property {boolean|null} [disabled] NetworkPolicyConfig disabled
+ */
+
+ /**
+ * Constructs a new NetworkPolicyConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a NetworkPolicyConfig.
+ * @implements INetworkPolicyConfig
+ * @constructor
+ * @param {google.container.v1.INetworkPolicyConfig=} [properties] Properties to set
+ */
+ function NetworkPolicyConfig(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]];
+ }
+
+ /**
+ * NetworkPolicyConfig disabled.
+ * @member {boolean} disabled
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @instance
+ */
+ NetworkPolicyConfig.prototype.disabled = false;
+
+ /**
+ * Creates a new NetworkPolicyConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {google.container.v1.INetworkPolicyConfig=} [properties] Properties to set
+ * @returns {google.container.v1.NetworkPolicyConfig} NetworkPolicyConfig instance
+ */
+ NetworkPolicyConfig.create = function create(properties) {
+ return new NetworkPolicyConfig(properties);
+ };
+
+ /**
+ * Encodes the specified NetworkPolicyConfig message. Does not implicitly {@link google.container.v1.NetworkPolicyConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {google.container.v1.INetworkPolicyConfig} message NetworkPolicyConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkPolicyConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.disabled != null && Object.hasOwnProperty.call(message, "disabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.disabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NetworkPolicyConfig message, length delimited. Does not implicitly {@link google.container.v1.NetworkPolicyConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {google.container.v1.INetworkPolicyConfig} message NetworkPolicyConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkPolicyConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NetworkPolicyConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NetworkPolicyConfig} NetworkPolicyConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkPolicyConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NetworkPolicyConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.disabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NetworkPolicyConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NetworkPolicyConfig} NetworkPolicyConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkPolicyConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NetworkPolicyConfig message.
+ * @function verify
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NetworkPolicyConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ if (typeof message.disabled !== "boolean")
+ return "disabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a NetworkPolicyConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NetworkPolicyConfig} NetworkPolicyConfig
+ */
+ NetworkPolicyConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NetworkPolicyConfig)
+ return object;
+ var message = new $root.google.container.v1.NetworkPolicyConfig();
+ if (object.disabled != null)
+ message.disabled = Boolean(object.disabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NetworkPolicyConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {google.container.v1.NetworkPolicyConfig} message NetworkPolicyConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NetworkPolicyConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.disabled = false;
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ object.disabled = message.disabled;
+ return object;
+ };
+
+ /**
+ * Converts this NetworkPolicyConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NetworkPolicyConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NetworkPolicyConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.NetworkPolicyConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NetworkPolicyConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NetworkPolicyConfig";
+ };
+
+ return NetworkPolicyConfig;
+ })();
+
+ v1.DnsCacheConfig = (function() {
+
+ /**
+ * Properties of a DnsCacheConfig.
+ * @memberof google.container.v1
+ * @interface IDnsCacheConfig
+ * @property {boolean|null} [enabled] DnsCacheConfig enabled
+ */
+
+ /**
+ * Constructs a new DnsCacheConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a DnsCacheConfig.
+ * @implements IDnsCacheConfig
+ * @constructor
+ * @param {google.container.v1.IDnsCacheConfig=} [properties] Properties to set
+ */
+ function DnsCacheConfig(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]];
+ }
+
+ /**
+ * DnsCacheConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.DnsCacheConfig
+ * @instance
+ */
+ DnsCacheConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new DnsCacheConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {google.container.v1.IDnsCacheConfig=} [properties] Properties to set
+ * @returns {google.container.v1.DnsCacheConfig} DnsCacheConfig instance
+ */
+ DnsCacheConfig.create = function create(properties) {
+ return new DnsCacheConfig(properties);
+ };
+
+ /**
+ * Encodes the specified DnsCacheConfig message. Does not implicitly {@link google.container.v1.DnsCacheConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {google.container.v1.IDnsCacheConfig} message DnsCacheConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DnsCacheConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified DnsCacheConfig message, length delimited. Does not implicitly {@link google.container.v1.DnsCacheConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {google.container.v1.IDnsCacheConfig} message DnsCacheConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ DnsCacheConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a DnsCacheConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.DnsCacheConfig} DnsCacheConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DnsCacheConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.DnsCacheConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a DnsCacheConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.DnsCacheConfig} DnsCacheConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ DnsCacheConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a DnsCacheConfig message.
+ * @function verify
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ DnsCacheConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a DnsCacheConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.DnsCacheConfig} DnsCacheConfig
+ */
+ DnsCacheConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.DnsCacheConfig)
+ return object;
+ var message = new $root.google.container.v1.DnsCacheConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a DnsCacheConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {google.container.v1.DnsCacheConfig} message DnsCacheConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ DnsCacheConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this DnsCacheConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.DnsCacheConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ DnsCacheConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for DnsCacheConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.DnsCacheConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ DnsCacheConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.DnsCacheConfig";
+ };
+
+ return DnsCacheConfig;
+ })();
+
+ v1.PrivateClusterMasterGlobalAccessConfig = (function() {
+
+ /**
+ * Properties of a PrivateClusterMasterGlobalAccessConfig.
+ * @memberof google.container.v1
+ * @interface IPrivateClusterMasterGlobalAccessConfig
+ * @property {boolean|null} [enabled] PrivateClusterMasterGlobalAccessConfig enabled
+ */
+
+ /**
+ * Constructs a new PrivateClusterMasterGlobalAccessConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a PrivateClusterMasterGlobalAccessConfig.
+ * @implements IPrivateClusterMasterGlobalAccessConfig
+ * @constructor
+ * @param {google.container.v1.IPrivateClusterMasterGlobalAccessConfig=} [properties] Properties to set
+ */
+ function PrivateClusterMasterGlobalAccessConfig(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]];
+ }
+
+ /**
+ * PrivateClusterMasterGlobalAccessConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @instance
+ */
+ PrivateClusterMasterGlobalAccessConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new PrivateClusterMasterGlobalAccessConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {google.container.v1.IPrivateClusterMasterGlobalAccessConfig=} [properties] Properties to set
+ * @returns {google.container.v1.PrivateClusterMasterGlobalAccessConfig} PrivateClusterMasterGlobalAccessConfig instance
+ */
+ PrivateClusterMasterGlobalAccessConfig.create = function create(properties) {
+ return new PrivateClusterMasterGlobalAccessConfig(properties);
+ };
+
+ /**
+ * Encodes the specified PrivateClusterMasterGlobalAccessConfig message. Does not implicitly {@link google.container.v1.PrivateClusterMasterGlobalAccessConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {google.container.v1.IPrivateClusterMasterGlobalAccessConfig} message PrivateClusterMasterGlobalAccessConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ PrivateClusterMasterGlobalAccessConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified PrivateClusterMasterGlobalAccessConfig message, length delimited. Does not implicitly {@link google.container.v1.PrivateClusterMasterGlobalAccessConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {google.container.v1.IPrivateClusterMasterGlobalAccessConfig} message PrivateClusterMasterGlobalAccessConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ PrivateClusterMasterGlobalAccessConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a PrivateClusterMasterGlobalAccessConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.PrivateClusterMasterGlobalAccessConfig} PrivateClusterMasterGlobalAccessConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ PrivateClusterMasterGlobalAccessConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a PrivateClusterMasterGlobalAccessConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.PrivateClusterMasterGlobalAccessConfig} PrivateClusterMasterGlobalAccessConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ PrivateClusterMasterGlobalAccessConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a PrivateClusterMasterGlobalAccessConfig message.
+ * @function verify
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ PrivateClusterMasterGlobalAccessConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a PrivateClusterMasterGlobalAccessConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.PrivateClusterMasterGlobalAccessConfig} PrivateClusterMasterGlobalAccessConfig
+ */
+ PrivateClusterMasterGlobalAccessConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig)
+ return object;
+ var message = new $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a PrivateClusterMasterGlobalAccessConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {google.container.v1.PrivateClusterMasterGlobalAccessConfig} message PrivateClusterMasterGlobalAccessConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ PrivateClusterMasterGlobalAccessConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this PrivateClusterMasterGlobalAccessConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ PrivateClusterMasterGlobalAccessConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for PrivateClusterMasterGlobalAccessConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.PrivateClusterMasterGlobalAccessConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ PrivateClusterMasterGlobalAccessConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.PrivateClusterMasterGlobalAccessConfig";
+ };
+
+ return PrivateClusterMasterGlobalAccessConfig;
+ })();
+
+ v1.PrivateClusterConfig = (function() {
+
+ /**
+ * Properties of a PrivateClusterConfig.
+ * @memberof google.container.v1
+ * @interface IPrivateClusterConfig
+ * @property {boolean|null} [enablePrivateNodes] PrivateClusterConfig enablePrivateNodes
+ * @property {boolean|null} [enablePrivateEndpoint] PrivateClusterConfig enablePrivateEndpoint
+ * @property {string|null} [masterIpv4CidrBlock] PrivateClusterConfig masterIpv4CidrBlock
+ * @property {string|null} [privateEndpoint] PrivateClusterConfig privateEndpoint
+ * @property {string|null} [publicEndpoint] PrivateClusterConfig publicEndpoint
+ * @property {string|null} [peeringName] PrivateClusterConfig peeringName
+ * @property {google.container.v1.IPrivateClusterMasterGlobalAccessConfig|null} [masterGlobalAccessConfig] PrivateClusterConfig masterGlobalAccessConfig
+ * @property {string|null} [privateEndpointSubnetwork] PrivateClusterConfig privateEndpointSubnetwork
+ */
+
+ /**
+ * Constructs a new PrivateClusterConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a PrivateClusterConfig.
+ * @implements IPrivateClusterConfig
+ * @constructor
+ * @param {google.container.v1.IPrivateClusterConfig=} [properties] Properties to set
+ */
+ function PrivateClusterConfig(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]];
+ }
+
+ /**
+ * PrivateClusterConfig enablePrivateNodes.
+ * @member {boolean} enablePrivateNodes
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.enablePrivateNodes = false;
+
+ /**
+ * PrivateClusterConfig enablePrivateEndpoint.
+ * @member {boolean} enablePrivateEndpoint
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.enablePrivateEndpoint = false;
+
+ /**
+ * PrivateClusterConfig masterIpv4CidrBlock.
+ * @member {string} masterIpv4CidrBlock
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.masterIpv4CidrBlock = "";
+
+ /**
+ * PrivateClusterConfig privateEndpoint.
+ * @member {string} privateEndpoint
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.privateEndpoint = "";
+
+ /**
+ * PrivateClusterConfig publicEndpoint.
+ * @member {string} publicEndpoint
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.publicEndpoint = "";
+
+ /**
+ * PrivateClusterConfig peeringName.
+ * @member {string} peeringName
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.peeringName = "";
+
+ /**
+ * PrivateClusterConfig masterGlobalAccessConfig.
+ * @member {google.container.v1.IPrivateClusterMasterGlobalAccessConfig|null|undefined} masterGlobalAccessConfig
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.masterGlobalAccessConfig = null;
+
+ /**
+ * PrivateClusterConfig privateEndpointSubnetwork.
+ * @member {string} privateEndpointSubnetwork
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ */
+ PrivateClusterConfig.prototype.privateEndpointSubnetwork = "";
+
+ /**
+ * Creates a new PrivateClusterConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {google.container.v1.IPrivateClusterConfig=} [properties] Properties to set
+ * @returns {google.container.v1.PrivateClusterConfig} PrivateClusterConfig instance
+ */
+ PrivateClusterConfig.create = function create(properties) {
+ return new PrivateClusterConfig(properties);
+ };
+
+ /**
+ * Encodes the specified PrivateClusterConfig message. Does not implicitly {@link google.container.v1.PrivateClusterConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {google.container.v1.IPrivateClusterConfig} message PrivateClusterConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ PrivateClusterConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enablePrivateNodes != null && Object.hasOwnProperty.call(message, "enablePrivateNodes"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enablePrivateNodes);
+ if (message.enablePrivateEndpoint != null && Object.hasOwnProperty.call(message, "enablePrivateEndpoint"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.enablePrivateEndpoint);
+ if (message.masterIpv4CidrBlock != null && Object.hasOwnProperty.call(message, "masterIpv4CidrBlock"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.masterIpv4CidrBlock);
+ if (message.privateEndpoint != null && Object.hasOwnProperty.call(message, "privateEndpoint"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.privateEndpoint);
+ if (message.publicEndpoint != null && Object.hasOwnProperty.call(message, "publicEndpoint"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.publicEndpoint);
+ if (message.peeringName != null && Object.hasOwnProperty.call(message, "peeringName"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.peeringName);
+ if (message.masterGlobalAccessConfig != null && Object.hasOwnProperty.call(message, "masterGlobalAccessConfig"))
+ $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig.encode(message.masterGlobalAccessConfig, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
+ if (message.privateEndpointSubnetwork != null && Object.hasOwnProperty.call(message, "privateEndpointSubnetwork"))
+ writer.uint32(/* id 10, wireType 2 =*/82).string(message.privateEndpointSubnetwork);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified PrivateClusterConfig message, length delimited. Does not implicitly {@link google.container.v1.PrivateClusterConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {google.container.v1.IPrivateClusterConfig} message PrivateClusterConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ PrivateClusterConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a PrivateClusterConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.PrivateClusterConfig} PrivateClusterConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ PrivateClusterConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.PrivateClusterConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enablePrivateNodes = reader.bool();
+ break;
+ }
+ case 2: {
+ message.enablePrivateEndpoint = reader.bool();
+ break;
+ }
+ case 3: {
+ message.masterIpv4CidrBlock = reader.string();
+ break;
+ }
+ case 4: {
+ message.privateEndpoint = reader.string();
+ break;
+ }
+ case 5: {
+ message.publicEndpoint = reader.string();
+ break;
+ }
+ case 7: {
+ message.peeringName = reader.string();
+ break;
+ }
+ case 8: {
+ message.masterGlobalAccessConfig = $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig.decode(reader, reader.uint32());
+ break;
+ }
+ case 10: {
+ message.privateEndpointSubnetwork = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a PrivateClusterConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.PrivateClusterConfig} PrivateClusterConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ PrivateClusterConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a PrivateClusterConfig message.
+ * @function verify
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ PrivateClusterConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enablePrivateNodes != null && message.hasOwnProperty("enablePrivateNodes"))
+ if (typeof message.enablePrivateNodes !== "boolean")
+ return "enablePrivateNodes: boolean expected";
+ if (message.enablePrivateEndpoint != null && message.hasOwnProperty("enablePrivateEndpoint"))
+ if (typeof message.enablePrivateEndpoint !== "boolean")
+ return "enablePrivateEndpoint: boolean expected";
+ if (message.masterIpv4CidrBlock != null && message.hasOwnProperty("masterIpv4CidrBlock"))
+ if (!$util.isString(message.masterIpv4CidrBlock))
+ return "masterIpv4CidrBlock: string expected";
+ if (message.privateEndpoint != null && message.hasOwnProperty("privateEndpoint"))
+ if (!$util.isString(message.privateEndpoint))
+ return "privateEndpoint: string expected";
+ if (message.publicEndpoint != null && message.hasOwnProperty("publicEndpoint"))
+ if (!$util.isString(message.publicEndpoint))
+ return "publicEndpoint: string expected";
+ if (message.peeringName != null && message.hasOwnProperty("peeringName"))
+ if (!$util.isString(message.peeringName))
+ return "peeringName: string expected";
+ if (message.masterGlobalAccessConfig != null && message.hasOwnProperty("masterGlobalAccessConfig")) {
+ var error = $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig.verify(message.masterGlobalAccessConfig);
+ if (error)
+ return "masterGlobalAccessConfig." + error;
+ }
+ if (message.privateEndpointSubnetwork != null && message.hasOwnProperty("privateEndpointSubnetwork"))
+ if (!$util.isString(message.privateEndpointSubnetwork))
+ return "privateEndpointSubnetwork: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a PrivateClusterConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.PrivateClusterConfig} PrivateClusterConfig
+ */
+ PrivateClusterConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.PrivateClusterConfig)
+ return object;
+ var message = new $root.google.container.v1.PrivateClusterConfig();
+ if (object.enablePrivateNodes != null)
+ message.enablePrivateNodes = Boolean(object.enablePrivateNodes);
+ if (object.enablePrivateEndpoint != null)
+ message.enablePrivateEndpoint = Boolean(object.enablePrivateEndpoint);
+ if (object.masterIpv4CidrBlock != null)
+ message.masterIpv4CidrBlock = String(object.masterIpv4CidrBlock);
+ if (object.privateEndpoint != null)
+ message.privateEndpoint = String(object.privateEndpoint);
+ if (object.publicEndpoint != null)
+ message.publicEndpoint = String(object.publicEndpoint);
+ if (object.peeringName != null)
+ message.peeringName = String(object.peeringName);
+ if (object.masterGlobalAccessConfig != null) {
+ if (typeof object.masterGlobalAccessConfig !== "object")
+ throw TypeError(".google.container.v1.PrivateClusterConfig.masterGlobalAccessConfig: object expected");
+ message.masterGlobalAccessConfig = $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig.fromObject(object.masterGlobalAccessConfig);
+ }
+ if (object.privateEndpointSubnetwork != null)
+ message.privateEndpointSubnetwork = String(object.privateEndpointSubnetwork);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a PrivateClusterConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {google.container.v1.PrivateClusterConfig} message PrivateClusterConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ PrivateClusterConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.enablePrivateNodes = false;
+ object.enablePrivateEndpoint = false;
+ object.masterIpv4CidrBlock = "";
+ object.privateEndpoint = "";
+ object.publicEndpoint = "";
+ object.peeringName = "";
+ object.masterGlobalAccessConfig = null;
+ object.privateEndpointSubnetwork = "";
+ }
+ if (message.enablePrivateNodes != null && message.hasOwnProperty("enablePrivateNodes"))
+ object.enablePrivateNodes = message.enablePrivateNodes;
+ if (message.enablePrivateEndpoint != null && message.hasOwnProperty("enablePrivateEndpoint"))
+ object.enablePrivateEndpoint = message.enablePrivateEndpoint;
+ if (message.masterIpv4CidrBlock != null && message.hasOwnProperty("masterIpv4CidrBlock"))
+ object.masterIpv4CidrBlock = message.masterIpv4CidrBlock;
+ if (message.privateEndpoint != null && message.hasOwnProperty("privateEndpoint"))
+ object.privateEndpoint = message.privateEndpoint;
+ if (message.publicEndpoint != null && message.hasOwnProperty("publicEndpoint"))
+ object.publicEndpoint = message.publicEndpoint;
+ if (message.peeringName != null && message.hasOwnProperty("peeringName"))
+ object.peeringName = message.peeringName;
+ if (message.masterGlobalAccessConfig != null && message.hasOwnProperty("masterGlobalAccessConfig"))
+ object.masterGlobalAccessConfig = $root.google.container.v1.PrivateClusterMasterGlobalAccessConfig.toObject(message.masterGlobalAccessConfig, options);
+ if (message.privateEndpointSubnetwork != null && message.hasOwnProperty("privateEndpointSubnetwork"))
+ object.privateEndpointSubnetwork = message.privateEndpointSubnetwork;
+ return object;
+ };
+
+ /**
+ * Converts this PrivateClusterConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ PrivateClusterConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for PrivateClusterConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.PrivateClusterConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ PrivateClusterConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.PrivateClusterConfig";
+ };
+
+ return PrivateClusterConfig;
+ })();
+
+ v1.AuthenticatorGroupsConfig = (function() {
+
+ /**
+ * Properties of an AuthenticatorGroupsConfig.
+ * @memberof google.container.v1
+ * @interface IAuthenticatorGroupsConfig
+ * @property {boolean|null} [enabled] AuthenticatorGroupsConfig enabled
+ * @property {string|null} [securityGroup] AuthenticatorGroupsConfig securityGroup
+ */
+
+ /**
+ * Constructs a new AuthenticatorGroupsConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents an AuthenticatorGroupsConfig.
+ * @implements IAuthenticatorGroupsConfig
+ * @constructor
+ * @param {google.container.v1.IAuthenticatorGroupsConfig=} [properties] Properties to set
+ */
+ function AuthenticatorGroupsConfig(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]];
+ }
+
+ /**
+ * AuthenticatorGroupsConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @instance
+ */
+ AuthenticatorGroupsConfig.prototype.enabled = false;
+
+ /**
+ * AuthenticatorGroupsConfig securityGroup.
+ * @member {string} securityGroup
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @instance
+ */
+ AuthenticatorGroupsConfig.prototype.securityGroup = "";
+
+ /**
+ * Creates a new AuthenticatorGroupsConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {google.container.v1.IAuthenticatorGroupsConfig=} [properties] Properties to set
+ * @returns {google.container.v1.AuthenticatorGroupsConfig} AuthenticatorGroupsConfig instance
+ */
+ AuthenticatorGroupsConfig.create = function create(properties) {
+ return new AuthenticatorGroupsConfig(properties);
+ };
+
+ /**
+ * Encodes the specified AuthenticatorGroupsConfig message. Does not implicitly {@link google.container.v1.AuthenticatorGroupsConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {google.container.v1.IAuthenticatorGroupsConfig} message AuthenticatorGroupsConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AuthenticatorGroupsConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ if (message.securityGroup != null && Object.hasOwnProperty.call(message, "securityGroup"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.securityGroup);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified AuthenticatorGroupsConfig message, length delimited. Does not implicitly {@link google.container.v1.AuthenticatorGroupsConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {google.container.v1.IAuthenticatorGroupsConfig} message AuthenticatorGroupsConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ AuthenticatorGroupsConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an AuthenticatorGroupsConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.AuthenticatorGroupsConfig} AuthenticatorGroupsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AuthenticatorGroupsConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.AuthenticatorGroupsConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ case 2: {
+ message.securityGroup = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an AuthenticatorGroupsConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.AuthenticatorGroupsConfig} AuthenticatorGroupsConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ AuthenticatorGroupsConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an AuthenticatorGroupsConfig message.
+ * @function verify
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ AuthenticatorGroupsConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ if (message.securityGroup != null && message.hasOwnProperty("securityGroup"))
+ if (!$util.isString(message.securityGroup))
+ return "securityGroup: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an AuthenticatorGroupsConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.AuthenticatorGroupsConfig} AuthenticatorGroupsConfig
+ */
+ AuthenticatorGroupsConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.AuthenticatorGroupsConfig)
+ return object;
+ var message = new $root.google.container.v1.AuthenticatorGroupsConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ if (object.securityGroup != null)
+ message.securityGroup = String(object.securityGroup);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an AuthenticatorGroupsConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {google.container.v1.AuthenticatorGroupsConfig} message AuthenticatorGroupsConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ AuthenticatorGroupsConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.enabled = false;
+ object.securityGroup = "";
+ }
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ if (message.securityGroup != null && message.hasOwnProperty("securityGroup"))
+ object.securityGroup = message.securityGroup;
+ return object;
+ };
+
+ /**
+ * Converts this AuthenticatorGroupsConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ AuthenticatorGroupsConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for AuthenticatorGroupsConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.AuthenticatorGroupsConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ AuthenticatorGroupsConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.AuthenticatorGroupsConfig";
+ };
+
+ return AuthenticatorGroupsConfig;
+ })();
+
+ v1.CloudRunConfig = (function() {
+
+ /**
+ * Properties of a CloudRunConfig.
+ * @memberof google.container.v1
+ * @interface ICloudRunConfig
+ * @property {boolean|null} [disabled] CloudRunConfig disabled
+ * @property {google.container.v1.CloudRunConfig.LoadBalancerType|null} [loadBalancerType] CloudRunConfig loadBalancerType
+ */
+
+ /**
+ * Constructs a new CloudRunConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a CloudRunConfig.
+ * @implements ICloudRunConfig
+ * @constructor
+ * @param {google.container.v1.ICloudRunConfig=} [properties] Properties to set
+ */
+ function CloudRunConfig(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]];
+ }
+
+ /**
+ * CloudRunConfig disabled.
+ * @member {boolean} disabled
+ * @memberof google.container.v1.CloudRunConfig
+ * @instance
+ */
+ CloudRunConfig.prototype.disabled = false;
+
+ /**
+ * CloudRunConfig loadBalancerType.
+ * @member {google.container.v1.CloudRunConfig.LoadBalancerType} loadBalancerType
+ * @memberof google.container.v1.CloudRunConfig
+ * @instance
+ */
+ CloudRunConfig.prototype.loadBalancerType = 0;
+
+ /**
+ * Creates a new CloudRunConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {google.container.v1.ICloudRunConfig=} [properties] Properties to set
+ * @returns {google.container.v1.CloudRunConfig} CloudRunConfig instance
+ */
+ CloudRunConfig.create = function create(properties) {
+ return new CloudRunConfig(properties);
+ };
+
+ /**
+ * Encodes the specified CloudRunConfig message. Does not implicitly {@link google.container.v1.CloudRunConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {google.container.v1.ICloudRunConfig} message CloudRunConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CloudRunConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.disabled != null && Object.hasOwnProperty.call(message, "disabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.disabled);
+ if (message.loadBalancerType != null && Object.hasOwnProperty.call(message, "loadBalancerType"))
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.loadBalancerType);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CloudRunConfig message, length delimited. Does not implicitly {@link google.container.v1.CloudRunConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {google.container.v1.ICloudRunConfig} message CloudRunConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CloudRunConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CloudRunConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.CloudRunConfig} CloudRunConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CloudRunConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.CloudRunConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.disabled = reader.bool();
+ break;
+ }
+ case 3: {
+ message.loadBalancerType = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CloudRunConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.CloudRunConfig} CloudRunConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CloudRunConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CloudRunConfig message.
+ * @function verify
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CloudRunConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ if (typeof message.disabled !== "boolean")
+ return "disabled: boolean expected";
+ if (message.loadBalancerType != null && message.hasOwnProperty("loadBalancerType"))
+ switch (message.loadBalancerType) {
+ default:
+ return "loadBalancerType: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a CloudRunConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.CloudRunConfig} CloudRunConfig
+ */
+ CloudRunConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.CloudRunConfig)
+ return object;
+ var message = new $root.google.container.v1.CloudRunConfig();
+ if (object.disabled != null)
+ message.disabled = Boolean(object.disabled);
+ switch (object.loadBalancerType) {
+ default:
+ if (typeof object.loadBalancerType === "number") {
+ message.loadBalancerType = object.loadBalancerType;
+ break;
+ }
+ break;
+ case "LOAD_BALANCER_TYPE_UNSPECIFIED":
+ case 0:
+ message.loadBalancerType = 0;
+ break;
+ case "LOAD_BALANCER_TYPE_EXTERNAL":
+ case 1:
+ message.loadBalancerType = 1;
+ break;
+ case "LOAD_BALANCER_TYPE_INTERNAL":
+ case 2:
+ message.loadBalancerType = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CloudRunConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {google.container.v1.CloudRunConfig} message CloudRunConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CloudRunConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.disabled = false;
+ object.loadBalancerType = options.enums === String ? "LOAD_BALANCER_TYPE_UNSPECIFIED" : 0;
+ }
+ if (message.disabled != null && message.hasOwnProperty("disabled"))
+ object.disabled = message.disabled;
+ if (message.loadBalancerType != null && message.hasOwnProperty("loadBalancerType"))
+ object.loadBalancerType = options.enums === String ? $root.google.container.v1.CloudRunConfig.LoadBalancerType[message.loadBalancerType] === undefined ? message.loadBalancerType : $root.google.container.v1.CloudRunConfig.LoadBalancerType[message.loadBalancerType] : message.loadBalancerType;
+ return object;
+ };
+
+ /**
+ * Converts this CloudRunConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.CloudRunConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CloudRunConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CloudRunConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.CloudRunConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CloudRunConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.CloudRunConfig";
+ };
+
+ /**
+ * LoadBalancerType enum.
+ * @name google.container.v1.CloudRunConfig.LoadBalancerType
+ * @enum {number}
+ * @property {number} LOAD_BALANCER_TYPE_UNSPECIFIED=0 LOAD_BALANCER_TYPE_UNSPECIFIED value
+ * @property {number} LOAD_BALANCER_TYPE_EXTERNAL=1 LOAD_BALANCER_TYPE_EXTERNAL value
+ * @property {number} LOAD_BALANCER_TYPE_INTERNAL=2 LOAD_BALANCER_TYPE_INTERNAL value
+ */
+ CloudRunConfig.LoadBalancerType = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "LOAD_BALANCER_TYPE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "LOAD_BALANCER_TYPE_EXTERNAL"] = 1;
+ values[valuesById[2] = "LOAD_BALANCER_TYPE_INTERNAL"] = 2;
+ return values;
+ })();
+
+ return CloudRunConfig;
+ })();
+
+ v1.ConfigConnectorConfig = (function() {
+
+ /**
+ * Properties of a ConfigConnectorConfig.
+ * @memberof google.container.v1
+ * @interface IConfigConnectorConfig
+ * @property {boolean|null} [enabled] ConfigConnectorConfig enabled
+ */
+
+ /**
+ * Constructs a new ConfigConnectorConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a ConfigConnectorConfig.
+ * @implements IConfigConnectorConfig
+ * @constructor
+ * @param {google.container.v1.IConfigConnectorConfig=} [properties] Properties to set
+ */
+ function ConfigConnectorConfig(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]];
+ }
+
+ /**
+ * ConfigConnectorConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @instance
+ */
+ ConfigConnectorConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new ConfigConnectorConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {google.container.v1.IConfigConnectorConfig=} [properties] Properties to set
+ * @returns {google.container.v1.ConfigConnectorConfig} ConfigConnectorConfig instance
+ */
+ ConfigConnectorConfig.create = function create(properties) {
+ return new ConfigConnectorConfig(properties);
+ };
+
+ /**
+ * Encodes the specified ConfigConnectorConfig message. Does not implicitly {@link google.container.v1.ConfigConnectorConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {google.container.v1.IConfigConnectorConfig} message ConfigConnectorConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ConfigConnectorConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ConfigConnectorConfig message, length delimited. Does not implicitly {@link google.container.v1.ConfigConnectorConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {google.container.v1.IConfigConnectorConfig} message ConfigConnectorConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ConfigConnectorConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ConfigConnectorConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.ConfigConnectorConfig} ConfigConnectorConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ConfigConnectorConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.ConfigConnectorConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ConfigConnectorConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.ConfigConnectorConfig} ConfigConnectorConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ConfigConnectorConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ConfigConnectorConfig message.
+ * @function verify
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ConfigConnectorConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a ConfigConnectorConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.ConfigConnectorConfig} ConfigConnectorConfig
+ */
+ ConfigConnectorConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.ConfigConnectorConfig)
+ return object;
+ var message = new $root.google.container.v1.ConfigConnectorConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ConfigConnectorConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {google.container.v1.ConfigConnectorConfig} message ConfigConnectorConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ConfigConnectorConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this ConfigConnectorConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ConfigConnectorConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ConfigConnectorConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.ConfigConnectorConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ConfigConnectorConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.ConfigConnectorConfig";
+ };
+
+ return ConfigConnectorConfig;
+ })();
+
+ v1.GcePersistentDiskCsiDriverConfig = (function() {
+
+ /**
+ * Properties of a GcePersistentDiskCsiDriverConfig.
+ * @memberof google.container.v1
+ * @interface IGcePersistentDiskCsiDriverConfig
+ * @property {boolean|null} [enabled] GcePersistentDiskCsiDriverConfig enabled
+ */
+
+ /**
+ * Constructs a new GcePersistentDiskCsiDriverConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a GcePersistentDiskCsiDriverConfig.
+ * @implements IGcePersistentDiskCsiDriverConfig
+ * @constructor
+ * @param {google.container.v1.IGcePersistentDiskCsiDriverConfig=} [properties] Properties to set
+ */
+ function GcePersistentDiskCsiDriverConfig(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]];
+ }
+
+ /**
+ * GcePersistentDiskCsiDriverConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @instance
+ */
+ GcePersistentDiskCsiDriverConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new GcePersistentDiskCsiDriverConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {google.container.v1.IGcePersistentDiskCsiDriverConfig=} [properties] Properties to set
+ * @returns {google.container.v1.GcePersistentDiskCsiDriverConfig} GcePersistentDiskCsiDriverConfig instance
+ */
+ GcePersistentDiskCsiDriverConfig.create = function create(properties) {
+ return new GcePersistentDiskCsiDriverConfig(properties);
+ };
+
+ /**
+ * Encodes the specified GcePersistentDiskCsiDriverConfig message. Does not implicitly {@link google.container.v1.GcePersistentDiskCsiDriverConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {google.container.v1.IGcePersistentDiskCsiDriverConfig} message GcePersistentDiskCsiDriverConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcePersistentDiskCsiDriverConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GcePersistentDiskCsiDriverConfig message, length delimited. Does not implicitly {@link google.container.v1.GcePersistentDiskCsiDriverConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {google.container.v1.IGcePersistentDiskCsiDriverConfig} message GcePersistentDiskCsiDriverConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcePersistentDiskCsiDriverConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GcePersistentDiskCsiDriverConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.GcePersistentDiskCsiDriverConfig} GcePersistentDiskCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcePersistentDiskCsiDriverConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.GcePersistentDiskCsiDriverConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GcePersistentDiskCsiDriverConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.GcePersistentDiskCsiDriverConfig} GcePersistentDiskCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcePersistentDiskCsiDriverConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GcePersistentDiskCsiDriverConfig message.
+ * @function verify
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GcePersistentDiskCsiDriverConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a GcePersistentDiskCsiDriverConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.GcePersistentDiskCsiDriverConfig} GcePersistentDiskCsiDriverConfig
+ */
+ GcePersistentDiskCsiDriverConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.GcePersistentDiskCsiDriverConfig)
+ return object;
+ var message = new $root.google.container.v1.GcePersistentDiskCsiDriverConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GcePersistentDiskCsiDriverConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {google.container.v1.GcePersistentDiskCsiDriverConfig} message GcePersistentDiskCsiDriverConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GcePersistentDiskCsiDriverConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this GcePersistentDiskCsiDriverConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GcePersistentDiskCsiDriverConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GcePersistentDiskCsiDriverConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.GcePersistentDiskCsiDriverConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GcePersistentDiskCsiDriverConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.GcePersistentDiskCsiDriverConfig";
+ };
+
+ return GcePersistentDiskCsiDriverConfig;
+ })();
+
+ v1.GcpFilestoreCsiDriverConfig = (function() {
+
+ /**
+ * Properties of a GcpFilestoreCsiDriverConfig.
+ * @memberof google.container.v1
+ * @interface IGcpFilestoreCsiDriverConfig
+ * @property {boolean|null} [enabled] GcpFilestoreCsiDriverConfig enabled
+ */
+
+ /**
+ * Constructs a new GcpFilestoreCsiDriverConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a GcpFilestoreCsiDriverConfig.
+ * @implements IGcpFilestoreCsiDriverConfig
+ * @constructor
+ * @param {google.container.v1.IGcpFilestoreCsiDriverConfig=} [properties] Properties to set
+ */
+ function GcpFilestoreCsiDriverConfig(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]];
+ }
+
+ /**
+ * GcpFilestoreCsiDriverConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @instance
+ */
+ GcpFilestoreCsiDriverConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new GcpFilestoreCsiDriverConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {google.container.v1.IGcpFilestoreCsiDriverConfig=} [properties] Properties to set
+ * @returns {google.container.v1.GcpFilestoreCsiDriverConfig} GcpFilestoreCsiDriverConfig instance
+ */
+ GcpFilestoreCsiDriverConfig.create = function create(properties) {
+ return new GcpFilestoreCsiDriverConfig(properties);
+ };
+
+ /**
+ * Encodes the specified GcpFilestoreCsiDriverConfig message. Does not implicitly {@link google.container.v1.GcpFilestoreCsiDriverConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {google.container.v1.IGcpFilestoreCsiDriverConfig} message GcpFilestoreCsiDriverConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcpFilestoreCsiDriverConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GcpFilestoreCsiDriverConfig message, length delimited. Does not implicitly {@link google.container.v1.GcpFilestoreCsiDriverConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {google.container.v1.IGcpFilestoreCsiDriverConfig} message GcpFilestoreCsiDriverConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GcpFilestoreCsiDriverConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GcpFilestoreCsiDriverConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.GcpFilestoreCsiDriverConfig} GcpFilestoreCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcpFilestoreCsiDriverConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.GcpFilestoreCsiDriverConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GcpFilestoreCsiDriverConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.GcpFilestoreCsiDriverConfig} GcpFilestoreCsiDriverConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GcpFilestoreCsiDriverConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GcpFilestoreCsiDriverConfig message.
+ * @function verify
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GcpFilestoreCsiDriverConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a GcpFilestoreCsiDriverConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.GcpFilestoreCsiDriverConfig} GcpFilestoreCsiDriverConfig
+ */
+ GcpFilestoreCsiDriverConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.GcpFilestoreCsiDriverConfig)
+ return object;
+ var message = new $root.google.container.v1.GcpFilestoreCsiDriverConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GcpFilestoreCsiDriverConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {google.container.v1.GcpFilestoreCsiDriverConfig} message GcpFilestoreCsiDriverConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GcpFilestoreCsiDriverConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this GcpFilestoreCsiDriverConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GcpFilestoreCsiDriverConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GcpFilestoreCsiDriverConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.GcpFilestoreCsiDriverConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GcpFilestoreCsiDriverConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.GcpFilestoreCsiDriverConfig";
+ };
+
+ return GcpFilestoreCsiDriverConfig;
+ })();
+
+ v1.GkeBackupAgentConfig = (function() {
+
+ /**
+ * Properties of a GkeBackupAgentConfig.
+ * @memberof google.container.v1
+ * @interface IGkeBackupAgentConfig
+ * @property {boolean|null} [enabled] GkeBackupAgentConfig enabled
+ */
+
+ /**
+ * Constructs a new GkeBackupAgentConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a GkeBackupAgentConfig.
+ * @implements IGkeBackupAgentConfig
+ * @constructor
+ * @param {google.container.v1.IGkeBackupAgentConfig=} [properties] Properties to set
+ */
+ function GkeBackupAgentConfig(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]];
+ }
+
+ /**
+ * GkeBackupAgentConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @instance
+ */
+ GkeBackupAgentConfig.prototype.enabled = false;
+
+ /**
+ * Creates a new GkeBackupAgentConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {google.container.v1.IGkeBackupAgentConfig=} [properties] Properties to set
+ * @returns {google.container.v1.GkeBackupAgentConfig} GkeBackupAgentConfig instance
+ */
+ GkeBackupAgentConfig.create = function create(properties) {
+ return new GkeBackupAgentConfig(properties);
+ };
+
+ /**
+ * Encodes the specified GkeBackupAgentConfig message. Does not implicitly {@link google.container.v1.GkeBackupAgentConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {google.container.v1.IGkeBackupAgentConfig} message GkeBackupAgentConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GkeBackupAgentConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified GkeBackupAgentConfig message, length delimited. Does not implicitly {@link google.container.v1.GkeBackupAgentConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {google.container.v1.IGkeBackupAgentConfig} message GkeBackupAgentConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ GkeBackupAgentConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a GkeBackupAgentConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.GkeBackupAgentConfig} GkeBackupAgentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GkeBackupAgentConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.GkeBackupAgentConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a GkeBackupAgentConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.GkeBackupAgentConfig} GkeBackupAgentConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ GkeBackupAgentConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a GkeBackupAgentConfig message.
+ * @function verify
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ GkeBackupAgentConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a GkeBackupAgentConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.GkeBackupAgentConfig} GkeBackupAgentConfig
+ */
+ GkeBackupAgentConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.GkeBackupAgentConfig)
+ return object;
+ var message = new $root.google.container.v1.GkeBackupAgentConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a GkeBackupAgentConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {google.container.v1.GkeBackupAgentConfig} message GkeBackupAgentConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ GkeBackupAgentConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this GkeBackupAgentConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ GkeBackupAgentConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for GkeBackupAgentConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.GkeBackupAgentConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ GkeBackupAgentConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.GkeBackupAgentConfig";
+ };
+
+ return GkeBackupAgentConfig;
+ })();
+
+ v1.MasterAuthorizedNetworksConfig = (function() {
+
+ /**
+ * Properties of a MasterAuthorizedNetworksConfig.
+ * @memberof google.container.v1
+ * @interface IMasterAuthorizedNetworksConfig
+ * @property {boolean|null} [enabled] MasterAuthorizedNetworksConfig enabled
+ * @property {Array.|null} [cidrBlocks] MasterAuthorizedNetworksConfig cidrBlocks
+ * @property {boolean|null} [gcpPublicCidrsAccessEnabled] MasterAuthorizedNetworksConfig gcpPublicCidrsAccessEnabled
+ */
+
+ /**
+ * Constructs a new MasterAuthorizedNetworksConfig.
+ * @memberof google.container.v1
+ * @classdesc Represents a MasterAuthorizedNetworksConfig.
+ * @implements IMasterAuthorizedNetworksConfig
+ * @constructor
+ * @param {google.container.v1.IMasterAuthorizedNetworksConfig=} [properties] Properties to set
+ */
+ function MasterAuthorizedNetworksConfig(properties) {
+ this.cidrBlocks = [];
+ 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]];
+ }
+
+ /**
+ * MasterAuthorizedNetworksConfig enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @instance
+ */
+ MasterAuthorizedNetworksConfig.prototype.enabled = false;
+
+ /**
+ * MasterAuthorizedNetworksConfig cidrBlocks.
+ * @member {Array.} cidrBlocks
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @instance
+ */
+ MasterAuthorizedNetworksConfig.prototype.cidrBlocks = $util.emptyArray;
+
+ /**
+ * MasterAuthorizedNetworksConfig gcpPublicCidrsAccessEnabled.
+ * @member {boolean|null|undefined} gcpPublicCidrsAccessEnabled
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @instance
+ */
+ MasterAuthorizedNetworksConfig.prototype.gcpPublicCidrsAccessEnabled = null;
+
+ // OneOf field names bound to virtual getters and setters
+ var $oneOfFields;
+
+ /**
+ * MasterAuthorizedNetworksConfig _gcpPublicCidrsAccessEnabled.
+ * @member {"gcpPublicCidrsAccessEnabled"|undefined} _gcpPublicCidrsAccessEnabled
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @instance
+ */
+ Object.defineProperty(MasterAuthorizedNetworksConfig.prototype, "_gcpPublicCidrsAccessEnabled", {
+ get: $util.oneOfGetter($oneOfFields = ["gcpPublicCidrsAccessEnabled"]),
+ set: $util.oneOfSetter($oneOfFields)
+ });
+
+ /**
+ * Creates a new MasterAuthorizedNetworksConfig instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {google.container.v1.IMasterAuthorizedNetworksConfig=} [properties] Properties to set
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig} MasterAuthorizedNetworksConfig instance
+ */
+ MasterAuthorizedNetworksConfig.create = function create(properties) {
+ return new MasterAuthorizedNetworksConfig(properties);
+ };
+
+ /**
+ * Encodes the specified MasterAuthorizedNetworksConfig message. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {google.container.v1.IMasterAuthorizedNetworksConfig} message MasterAuthorizedNetworksConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ MasterAuthorizedNetworksConfig.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ if (message.cidrBlocks != null && message.cidrBlocks.length)
+ for (var i = 0; i < message.cidrBlocks.length; ++i)
+ $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.encode(message.cidrBlocks[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.gcpPublicCidrsAccessEnabled != null && Object.hasOwnProperty.call(message, "gcpPublicCidrsAccessEnabled"))
+ writer.uint32(/* id 3, wireType 0 =*/24).bool(message.gcpPublicCidrsAccessEnabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified MasterAuthorizedNetworksConfig message, length delimited. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {google.container.v1.IMasterAuthorizedNetworksConfig} message MasterAuthorizedNetworksConfig message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ MasterAuthorizedNetworksConfig.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a MasterAuthorizedNetworksConfig message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig} MasterAuthorizedNetworksConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ MasterAuthorizedNetworksConfig.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.MasterAuthorizedNetworksConfig();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ case 2: {
+ if (!(message.cidrBlocks && message.cidrBlocks.length))
+ message.cidrBlocks = [];
+ message.cidrBlocks.push($root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.decode(reader, reader.uint32()));
+ break;
+ }
+ case 3: {
+ message.gcpPublicCidrsAccessEnabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a MasterAuthorizedNetworksConfig message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig} MasterAuthorizedNetworksConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ MasterAuthorizedNetworksConfig.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a MasterAuthorizedNetworksConfig message.
+ * @function verify
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ MasterAuthorizedNetworksConfig.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ var properties = {};
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ if (message.cidrBlocks != null && message.hasOwnProperty("cidrBlocks")) {
+ if (!Array.isArray(message.cidrBlocks))
+ return "cidrBlocks: array expected";
+ for (var i = 0; i < message.cidrBlocks.length; ++i) {
+ var error = $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.verify(message.cidrBlocks[i]);
+ if (error)
+ return "cidrBlocks." + error;
+ }
+ }
+ if (message.gcpPublicCidrsAccessEnabled != null && message.hasOwnProperty("gcpPublicCidrsAccessEnabled")) {
+ properties._gcpPublicCidrsAccessEnabled = 1;
+ if (typeof message.gcpPublicCidrsAccessEnabled !== "boolean")
+ return "gcpPublicCidrsAccessEnabled: boolean expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a MasterAuthorizedNetworksConfig message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig} MasterAuthorizedNetworksConfig
+ */
+ MasterAuthorizedNetworksConfig.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.MasterAuthorizedNetworksConfig)
+ return object;
+ var message = new $root.google.container.v1.MasterAuthorizedNetworksConfig();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ if (object.cidrBlocks) {
+ if (!Array.isArray(object.cidrBlocks))
+ throw TypeError(".google.container.v1.MasterAuthorizedNetworksConfig.cidrBlocks: array expected");
+ message.cidrBlocks = [];
+ for (var i = 0; i < object.cidrBlocks.length; ++i) {
+ if (typeof object.cidrBlocks[i] !== "object")
+ throw TypeError(".google.container.v1.MasterAuthorizedNetworksConfig.cidrBlocks: object expected");
+ message.cidrBlocks[i] = $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.fromObject(object.cidrBlocks[i]);
+ }
+ }
+ if (object.gcpPublicCidrsAccessEnabled != null)
+ message.gcpPublicCidrsAccessEnabled = Boolean(object.gcpPublicCidrsAccessEnabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a MasterAuthorizedNetworksConfig message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {google.container.v1.MasterAuthorizedNetworksConfig} message MasterAuthorizedNetworksConfig
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ MasterAuthorizedNetworksConfig.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.cidrBlocks = [];
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ if (message.cidrBlocks && message.cidrBlocks.length) {
+ object.cidrBlocks = [];
+ for (var j = 0; j < message.cidrBlocks.length; ++j)
+ object.cidrBlocks[j] = $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.toObject(message.cidrBlocks[j], options);
+ }
+ if (message.gcpPublicCidrsAccessEnabled != null && message.hasOwnProperty("gcpPublicCidrsAccessEnabled")) {
+ object.gcpPublicCidrsAccessEnabled = message.gcpPublicCidrsAccessEnabled;
+ if (options.oneofs)
+ object._gcpPublicCidrsAccessEnabled = "gcpPublicCidrsAccessEnabled";
+ }
+ return object;
+ };
+
+ /**
+ * Converts this MasterAuthorizedNetworksConfig to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ MasterAuthorizedNetworksConfig.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for MasterAuthorizedNetworksConfig
+ * @function getTypeUrl
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ MasterAuthorizedNetworksConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.MasterAuthorizedNetworksConfig";
+ };
+
+ MasterAuthorizedNetworksConfig.CidrBlock = (function() {
+
+ /**
+ * Properties of a CidrBlock.
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @interface ICidrBlock
+ * @property {string|null} [displayName] CidrBlock displayName
+ * @property {string|null} [cidrBlock] CidrBlock cidrBlock
+ */
+
+ /**
+ * Constructs a new CidrBlock.
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig
+ * @classdesc Represents a CidrBlock.
+ * @implements ICidrBlock
+ * @constructor
+ * @param {google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock=} [properties] Properties to set
+ */
+ function CidrBlock(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]];
+ }
+
+ /**
+ * CidrBlock displayName.
+ * @member {string} displayName
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @instance
+ */
+ CidrBlock.prototype.displayName = "";
+
+ /**
+ * CidrBlock cidrBlock.
+ * @member {string} cidrBlock
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @instance
+ */
+ CidrBlock.prototype.cidrBlock = "";
+
+ /**
+ * Creates a new CidrBlock instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock=} [properties] Properties to set
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock} CidrBlock instance
+ */
+ CidrBlock.create = function create(properties) {
+ return new CidrBlock(properties);
+ };
+
+ /**
+ * Encodes the specified CidrBlock message. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock} message CidrBlock message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CidrBlock.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayName);
+ if (message.cidrBlock != null && Object.hasOwnProperty.call(message, "cidrBlock"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.cidrBlock);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified CidrBlock message, length delimited. Does not implicitly {@link google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {google.container.v1.MasterAuthorizedNetworksConfig.ICidrBlock} message CidrBlock message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ CidrBlock.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a CidrBlock message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock} CidrBlock
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CidrBlock.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.displayName = reader.string();
+ break;
+ }
+ case 2: {
+ message.cidrBlock = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a CidrBlock message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock} CidrBlock
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ CidrBlock.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a CidrBlock message.
+ * @function verify
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ CidrBlock.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ if (!$util.isString(message.displayName))
+ return "displayName: string expected";
+ if (message.cidrBlock != null && message.hasOwnProperty("cidrBlock"))
+ if (!$util.isString(message.cidrBlock))
+ return "cidrBlock: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a CidrBlock message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock} CidrBlock
+ */
+ CidrBlock.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock)
+ return object;
+ var message = new $root.google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock();
+ if (object.displayName != null)
+ message.displayName = String(object.displayName);
+ if (object.cidrBlock != null)
+ message.cidrBlock = String(object.cidrBlock);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a CidrBlock message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock} message CidrBlock
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ CidrBlock.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.displayName = "";
+ object.cidrBlock = "";
+ }
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ object.displayName = message.displayName;
+ if (message.cidrBlock != null && message.hasOwnProperty("cidrBlock"))
+ object.cidrBlock = message.cidrBlock;
+ return object;
+ };
+
+ /**
+ * Converts this CidrBlock to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ CidrBlock.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for CidrBlock
+ * @function getTypeUrl
+ * @memberof google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ CidrBlock.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.MasterAuthorizedNetworksConfig.CidrBlock";
+ };
+
+ return CidrBlock;
+ })();
+
+ return MasterAuthorizedNetworksConfig;
+ })();
+
+ v1.LegacyAbac = (function() {
+
+ /**
+ * Properties of a LegacyAbac.
+ * @memberof google.container.v1
+ * @interface ILegacyAbac
+ * @property {boolean|null} [enabled] LegacyAbac enabled
+ */
+
+ /**
+ * Constructs a new LegacyAbac.
+ * @memberof google.container.v1
+ * @classdesc Represents a LegacyAbac.
+ * @implements ILegacyAbac
+ * @constructor
+ * @param {google.container.v1.ILegacyAbac=} [properties] Properties to set
+ */
+ function LegacyAbac(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]];
+ }
+
+ /**
+ * LegacyAbac enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.LegacyAbac
+ * @instance
+ */
+ LegacyAbac.prototype.enabled = false;
+
+ /**
+ * Creates a new LegacyAbac instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {google.container.v1.ILegacyAbac=} [properties] Properties to set
+ * @returns {google.container.v1.LegacyAbac} LegacyAbac instance
+ */
+ LegacyAbac.create = function create(properties) {
+ return new LegacyAbac(properties);
+ };
+
+ /**
+ * Encodes the specified LegacyAbac message. Does not implicitly {@link google.container.v1.LegacyAbac.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {google.container.v1.ILegacyAbac} message LegacyAbac message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LegacyAbac.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified LegacyAbac message, length delimited. Does not implicitly {@link google.container.v1.LegacyAbac.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {google.container.v1.ILegacyAbac} message LegacyAbac message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ LegacyAbac.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a LegacyAbac message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.LegacyAbac} LegacyAbac
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LegacyAbac.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.LegacyAbac();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a LegacyAbac message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.LegacyAbac} LegacyAbac
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ LegacyAbac.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a LegacyAbac message.
+ * @function verify
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ LegacyAbac.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a LegacyAbac message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.LegacyAbac} LegacyAbac
+ */
+ LegacyAbac.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.LegacyAbac)
+ return object;
+ var message = new $root.google.container.v1.LegacyAbac();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a LegacyAbac message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {google.container.v1.LegacyAbac} message LegacyAbac
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ LegacyAbac.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.enabled = false;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this LegacyAbac to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.LegacyAbac
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ LegacyAbac.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for LegacyAbac
+ * @function getTypeUrl
+ * @memberof google.container.v1.LegacyAbac
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ LegacyAbac.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.LegacyAbac";
+ };
+
+ return LegacyAbac;
+ })();
+
+ v1.NetworkPolicy = (function() {
+
+ /**
+ * Properties of a NetworkPolicy.
+ * @memberof google.container.v1
+ * @interface INetworkPolicy
+ * @property {google.container.v1.NetworkPolicy.Provider|null} [provider] NetworkPolicy provider
+ * @property {boolean|null} [enabled] NetworkPolicy enabled
+ */
+
+ /**
+ * Constructs a new NetworkPolicy.
+ * @memberof google.container.v1
+ * @classdesc Represents a NetworkPolicy.
+ * @implements INetworkPolicy
+ * @constructor
+ * @param {google.container.v1.INetworkPolicy=} [properties] Properties to set
+ */
+ function NetworkPolicy(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]];
+ }
+
+ /**
+ * NetworkPolicy provider.
+ * @member {google.container.v1.NetworkPolicy.Provider} provider
+ * @memberof google.container.v1.NetworkPolicy
+ * @instance
+ */
+ NetworkPolicy.prototype.provider = 0;
+
+ /**
+ * NetworkPolicy enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.NetworkPolicy
+ * @instance
+ */
+ NetworkPolicy.prototype.enabled = false;
+
+ /**
+ * Creates a new NetworkPolicy instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {google.container.v1.INetworkPolicy=} [properties] Properties to set
+ * @returns {google.container.v1.NetworkPolicy} NetworkPolicy instance
+ */
+ NetworkPolicy.create = function create(properties) {
+ return new NetworkPolicy(properties);
+ };
+
+ /**
+ * Encodes the specified NetworkPolicy message. Does not implicitly {@link google.container.v1.NetworkPolicy.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {google.container.v1.INetworkPolicy} message NetworkPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkPolicy.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.provider != null && Object.hasOwnProperty.call(message, "provider"))
+ writer.uint32(/* id 1, wireType 0 =*/8).int32(message.provider);
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.enabled);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified NetworkPolicy message, length delimited. Does not implicitly {@link google.container.v1.NetworkPolicy.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {google.container.v1.INetworkPolicy} message NetworkPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ NetworkPolicy.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a NetworkPolicy message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.NetworkPolicy} NetworkPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkPolicy.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.NetworkPolicy();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.provider = reader.int32();
+ break;
+ }
+ case 2: {
+ message.enabled = reader.bool();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a NetworkPolicy message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.NetworkPolicy} NetworkPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ NetworkPolicy.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a NetworkPolicy message.
+ * @function verify
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ NetworkPolicy.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.provider != null && message.hasOwnProperty("provider"))
+ switch (message.provider) {
+ default:
+ return "provider: enum value expected";
+ case 0:
+ case 1:
+ break;
+ }
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ return null;
+ };
+
+ /**
+ * Creates a NetworkPolicy message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.NetworkPolicy} NetworkPolicy
+ */
+ NetworkPolicy.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.NetworkPolicy)
+ return object;
+ var message = new $root.google.container.v1.NetworkPolicy();
+ switch (object.provider) {
+ default:
+ if (typeof object.provider === "number") {
+ message.provider = object.provider;
+ break;
+ }
+ break;
+ case "PROVIDER_UNSPECIFIED":
+ case 0:
+ message.provider = 0;
+ break;
+ case "CALICO":
+ case 1:
+ message.provider = 1;
+ break;
+ }
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a NetworkPolicy message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {google.container.v1.NetworkPolicy} message NetworkPolicy
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ NetworkPolicy.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.provider = options.enums === String ? "PROVIDER_UNSPECIFIED" : 0;
+ object.enabled = false;
+ }
+ if (message.provider != null && message.hasOwnProperty("provider"))
+ object.provider = options.enums === String ? $root.google.container.v1.NetworkPolicy.Provider[message.provider] === undefined ? message.provider : $root.google.container.v1.NetworkPolicy.Provider[message.provider] : message.provider;
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ return object;
+ };
+
+ /**
+ * Converts this NetworkPolicy to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.NetworkPolicy
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ NetworkPolicy.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for NetworkPolicy
+ * @function getTypeUrl
+ * @memberof google.container.v1.NetworkPolicy
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ NetworkPolicy.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.NetworkPolicy";
+ };
+
+ /**
+ * Provider enum.
+ * @name google.container.v1.NetworkPolicy.Provider
+ * @enum {number}
+ * @property {number} PROVIDER_UNSPECIFIED=0 PROVIDER_UNSPECIFIED value
+ * @property {number} CALICO=1 CALICO value
+ */
+ NetworkPolicy.Provider = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "PROVIDER_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "CALICO"] = 1;
+ return values;
+ })();
+
+ return NetworkPolicy;
+ })();
+
+ v1.BinaryAuthorization = (function() {
+
+ /**
+ * Properties of a BinaryAuthorization.
+ * @memberof google.container.v1
+ * @interface IBinaryAuthorization
+ * @property {boolean|null} [enabled] BinaryAuthorization enabled
+ * @property {google.container.v1.BinaryAuthorization.EvaluationMode|null} [evaluationMode] BinaryAuthorization evaluationMode
+ */
+
+ /**
+ * Constructs a new BinaryAuthorization.
+ * @memberof google.container.v1
+ * @classdesc Represents a BinaryAuthorization.
+ * @implements IBinaryAuthorization
+ * @constructor
+ * @param {google.container.v1.IBinaryAuthorization=} [properties] Properties to set
+ */
+ function BinaryAuthorization(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]];
+ }
+
+ /**
+ * BinaryAuthorization enabled.
+ * @member {boolean} enabled
+ * @memberof google.container.v1.BinaryAuthorization
+ * @instance
+ */
+ BinaryAuthorization.prototype.enabled = false;
+
+ /**
+ * BinaryAuthorization evaluationMode.
+ * @member {google.container.v1.BinaryAuthorization.EvaluationMode} evaluationMode
+ * @memberof google.container.v1.BinaryAuthorization
+ * @instance
+ */
+ BinaryAuthorization.prototype.evaluationMode = 0;
+
+ /**
+ * Creates a new BinaryAuthorization instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {google.container.v1.IBinaryAuthorization=} [properties] Properties to set
+ * @returns {google.container.v1.BinaryAuthorization} BinaryAuthorization instance
+ */
+ BinaryAuthorization.create = function create(properties) {
+ return new BinaryAuthorization(properties);
+ };
+
+ /**
+ * Encodes the specified BinaryAuthorization message. Does not implicitly {@link google.container.v1.BinaryAuthorization.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {google.container.v1.IBinaryAuthorization} message BinaryAuthorization message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BinaryAuthorization.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.enabled != null && Object.hasOwnProperty.call(message, "enabled"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.enabled);
+ if (message.evaluationMode != null && Object.hasOwnProperty.call(message, "evaluationMode"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.evaluationMode);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BinaryAuthorization message, length delimited. Does not implicitly {@link google.container.v1.BinaryAuthorization.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {google.container.v1.IBinaryAuthorization} message BinaryAuthorization message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BinaryAuthorization.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BinaryAuthorization message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.BinaryAuthorization} BinaryAuthorization
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BinaryAuthorization.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.BinaryAuthorization();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.enabled = reader.bool();
+ break;
+ }
+ case 2: {
+ message.evaluationMode = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BinaryAuthorization message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.BinaryAuthorization} BinaryAuthorization
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BinaryAuthorization.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BinaryAuthorization message.
+ * @function verify
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BinaryAuthorization.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ if (typeof message.enabled !== "boolean")
+ return "enabled: boolean expected";
+ if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode"))
+ switch (message.evaluationMode) {
+ default:
+ return "evaluationMode: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a BinaryAuthorization message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.BinaryAuthorization} BinaryAuthorization
+ */
+ BinaryAuthorization.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.BinaryAuthorization)
+ return object;
+ var message = new $root.google.container.v1.BinaryAuthorization();
+ if (object.enabled != null)
+ message.enabled = Boolean(object.enabled);
+ switch (object.evaluationMode) {
+ default:
+ if (typeof object.evaluationMode === "number") {
+ message.evaluationMode = object.evaluationMode;
+ break;
+ }
+ break;
+ case "EVALUATION_MODE_UNSPECIFIED":
+ case 0:
+ message.evaluationMode = 0;
+ break;
+ case "DISABLED":
+ case 1:
+ message.evaluationMode = 1;
+ break;
+ case "PROJECT_SINGLETON_POLICY_ENFORCE":
+ case 2:
+ message.evaluationMode = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BinaryAuthorization message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {google.container.v1.BinaryAuthorization} message BinaryAuthorization
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BinaryAuthorization.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.enabled = false;
+ object.evaluationMode = options.enums === String ? "EVALUATION_MODE_UNSPECIFIED" : 0;
+ }
+ if (message.enabled != null && message.hasOwnProperty("enabled"))
+ object.enabled = message.enabled;
+ if (message.evaluationMode != null && message.hasOwnProperty("evaluationMode"))
+ object.evaluationMode = options.enums === String ? $root.google.container.v1.BinaryAuthorization.EvaluationMode[message.evaluationMode] === undefined ? message.evaluationMode : $root.google.container.v1.BinaryAuthorization.EvaluationMode[message.evaluationMode] : message.evaluationMode;
+ return object;
+ };
+
+ /**
+ * Converts this BinaryAuthorization to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.BinaryAuthorization
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BinaryAuthorization.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BinaryAuthorization
+ * @function getTypeUrl
+ * @memberof google.container.v1.BinaryAuthorization
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BinaryAuthorization.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.BinaryAuthorization";
+ };
+
+ /**
+ * EvaluationMode enum.
+ * @name google.container.v1.BinaryAuthorization.EvaluationMode
+ * @enum {number}
+ * @property {number} EVALUATION_MODE_UNSPECIFIED=0 EVALUATION_MODE_UNSPECIFIED value
+ * @property {number} DISABLED=1 DISABLED value
+ * @property {number} PROJECT_SINGLETON_POLICY_ENFORCE=2 PROJECT_SINGLETON_POLICY_ENFORCE value
+ */
+ BinaryAuthorization.EvaluationMode = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "EVALUATION_MODE_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "DISABLED"] = 1;
+ values[valuesById[2] = "PROJECT_SINGLETON_POLICY_ENFORCE"] = 2;
+ return values;
+ })();
+
+ return BinaryAuthorization;
+ })();
+
+ v1.IPAllocationPolicy = (function() {
+
+ /**
+ * Properties of a IPAllocationPolicy.
+ * @memberof google.container.v1
+ * @interface IIPAllocationPolicy
+ * @property {boolean|null} [useIpAliases] IPAllocationPolicy useIpAliases
+ * @property {boolean|null} [createSubnetwork] IPAllocationPolicy createSubnetwork
+ * @property {string|null} [subnetworkName] IPAllocationPolicy subnetworkName
+ * @property {string|null} [clusterIpv4Cidr] IPAllocationPolicy clusterIpv4Cidr
+ * @property {string|null} [nodeIpv4Cidr] IPAllocationPolicy nodeIpv4Cidr
+ * @property {string|null} [servicesIpv4Cidr] IPAllocationPolicy servicesIpv4Cidr
+ * @property {string|null} [clusterSecondaryRangeName] IPAllocationPolicy clusterSecondaryRangeName
+ * @property {string|null} [servicesSecondaryRangeName] IPAllocationPolicy servicesSecondaryRangeName
+ * @property {string|null} [clusterIpv4CidrBlock] IPAllocationPolicy clusterIpv4CidrBlock
+ * @property {string|null} [nodeIpv4CidrBlock] IPAllocationPolicy nodeIpv4CidrBlock
+ * @property {string|null} [servicesIpv4CidrBlock] IPAllocationPolicy servicesIpv4CidrBlock
+ * @property {string|null} [tpuIpv4CidrBlock] IPAllocationPolicy tpuIpv4CidrBlock
+ * @property {boolean|null} [useRoutes] IPAllocationPolicy useRoutes
+ * @property {google.container.v1.StackType|null} [stackType] IPAllocationPolicy stackType
+ * @property {google.container.v1.IPv6AccessType|null} [ipv6AccessType] IPAllocationPolicy ipv6AccessType
+ */
+
+ /**
+ * Constructs a new IPAllocationPolicy.
+ * @memberof google.container.v1
+ * @classdesc Represents a IPAllocationPolicy.
+ * @implements IIPAllocationPolicy
+ * @constructor
+ * @param {google.container.v1.IIPAllocationPolicy=} [properties] Properties to set
+ */
+ function IPAllocationPolicy(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]];
+ }
+
+ /**
+ * IPAllocationPolicy useIpAliases.
+ * @member {boolean} useIpAliases
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.useIpAliases = false;
+
+ /**
+ * IPAllocationPolicy createSubnetwork.
+ * @member {boolean} createSubnetwork
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.createSubnetwork = false;
+
+ /**
+ * IPAllocationPolicy subnetworkName.
+ * @member {string} subnetworkName
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.subnetworkName = "";
+
+ /**
+ * IPAllocationPolicy clusterIpv4Cidr.
+ * @member {string} clusterIpv4Cidr
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.clusterIpv4Cidr = "";
+
+ /**
+ * IPAllocationPolicy nodeIpv4Cidr.
+ * @member {string} nodeIpv4Cidr
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.nodeIpv4Cidr = "";
+
+ /**
+ * IPAllocationPolicy servicesIpv4Cidr.
+ * @member {string} servicesIpv4Cidr
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.servicesIpv4Cidr = "";
+
+ /**
+ * IPAllocationPolicy clusterSecondaryRangeName.
+ * @member {string} clusterSecondaryRangeName
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.clusterSecondaryRangeName = "";
+
+ /**
+ * IPAllocationPolicy servicesSecondaryRangeName.
+ * @member {string} servicesSecondaryRangeName
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.servicesSecondaryRangeName = "";
+
+ /**
+ * IPAllocationPolicy clusterIpv4CidrBlock.
+ * @member {string} clusterIpv4CidrBlock
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.clusterIpv4CidrBlock = "";
+
+ /**
+ * IPAllocationPolicy nodeIpv4CidrBlock.
+ * @member {string} nodeIpv4CidrBlock
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.nodeIpv4CidrBlock = "";
+
+ /**
+ * IPAllocationPolicy servicesIpv4CidrBlock.
+ * @member {string} servicesIpv4CidrBlock
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.servicesIpv4CidrBlock = "";
+
+ /**
+ * IPAllocationPolicy tpuIpv4CidrBlock.
+ * @member {string} tpuIpv4CidrBlock
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.tpuIpv4CidrBlock = "";
+
+ /**
+ * IPAllocationPolicy useRoutes.
+ * @member {boolean} useRoutes
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.useRoutes = false;
+
+ /**
+ * IPAllocationPolicy stackType.
+ * @member {google.container.v1.StackType} stackType
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.stackType = 0;
+
+ /**
+ * IPAllocationPolicy ipv6AccessType.
+ * @member {google.container.v1.IPv6AccessType} ipv6AccessType
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ */
+ IPAllocationPolicy.prototype.ipv6AccessType = 0;
+
+ /**
+ * Creates a new IPAllocationPolicy instance using the specified properties.
+ * @function create
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {google.container.v1.IIPAllocationPolicy=} [properties] Properties to set
+ * @returns {google.container.v1.IPAllocationPolicy} IPAllocationPolicy instance
+ */
+ IPAllocationPolicy.create = function create(properties) {
+ return new IPAllocationPolicy(properties);
+ };
+
+ /**
+ * Encodes the specified IPAllocationPolicy message. Does not implicitly {@link google.container.v1.IPAllocationPolicy.verify|verify} messages.
+ * @function encode
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {google.container.v1.IIPAllocationPolicy} message IPAllocationPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IPAllocationPolicy.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.useIpAliases != null && Object.hasOwnProperty.call(message, "useIpAliases"))
+ writer.uint32(/* id 1, wireType 0 =*/8).bool(message.useIpAliases);
+ if (message.createSubnetwork != null && Object.hasOwnProperty.call(message, "createSubnetwork"))
+ writer.uint32(/* id 2, wireType 0 =*/16).bool(message.createSubnetwork);
+ if (message.subnetworkName != null && Object.hasOwnProperty.call(message, "subnetworkName"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.subnetworkName);
+ if (message.clusterIpv4Cidr != null && Object.hasOwnProperty.call(message, "clusterIpv4Cidr"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.clusterIpv4Cidr);
+ if (message.nodeIpv4Cidr != null && Object.hasOwnProperty.call(message, "nodeIpv4Cidr"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.nodeIpv4Cidr);
+ if (message.servicesIpv4Cidr != null && Object.hasOwnProperty.call(message, "servicesIpv4Cidr"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.servicesIpv4Cidr);
+ if (message.clusterSecondaryRangeName != null && Object.hasOwnProperty.call(message, "clusterSecondaryRangeName"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.clusterSecondaryRangeName);
+ if (message.servicesSecondaryRangeName != null && Object.hasOwnProperty.call(message, "servicesSecondaryRangeName"))
+ writer.uint32(/* id 8, wireType 2 =*/66).string(message.servicesSecondaryRangeName);
+ if (message.clusterIpv4CidrBlock != null && Object.hasOwnProperty.call(message, "clusterIpv4CidrBlock"))
+ writer.uint32(/* id 9, wireType 2 =*/74).string(message.clusterIpv4CidrBlock);
+ if (message.nodeIpv4CidrBlock != null && Object.hasOwnProperty.call(message, "nodeIpv4CidrBlock"))
+ writer.uint32(/* id 10, wireType 2 =*/82).string(message.nodeIpv4CidrBlock);
+ if (message.servicesIpv4CidrBlock != null && Object.hasOwnProperty.call(message, "servicesIpv4CidrBlock"))
+ writer.uint32(/* id 11, wireType 2 =*/90).string(message.servicesIpv4CidrBlock);
+ if (message.tpuIpv4CidrBlock != null && Object.hasOwnProperty.call(message, "tpuIpv4CidrBlock"))
+ writer.uint32(/* id 13, wireType 2 =*/106).string(message.tpuIpv4CidrBlock);
+ if (message.useRoutes != null && Object.hasOwnProperty.call(message, "useRoutes"))
+ writer.uint32(/* id 15, wireType 0 =*/120).bool(message.useRoutes);
+ if (message.stackType != null && Object.hasOwnProperty.call(message, "stackType"))
+ writer.uint32(/* id 16, wireType 0 =*/128).int32(message.stackType);
+ if (message.ipv6AccessType != null && Object.hasOwnProperty.call(message, "ipv6AccessType"))
+ writer.uint32(/* id 17, wireType 0 =*/136).int32(message.ipv6AccessType);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified IPAllocationPolicy message, length delimited. Does not implicitly {@link google.container.v1.IPAllocationPolicy.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {google.container.v1.IIPAllocationPolicy} message IPAllocationPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IPAllocationPolicy.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a IPAllocationPolicy message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.container.v1.IPAllocationPolicy} IPAllocationPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IPAllocationPolicy.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.container.v1.IPAllocationPolicy();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.useIpAliases = reader.bool();
+ break;
+ }
+ case 2: {
+ message.createSubnetwork = reader.bool();
+ break;
+ }
+ case 3: {
+ message.subnetworkName = reader.string();
+ break;
+ }
+ case 4: {
+ message.clusterIpv4Cidr = reader.string();
+ break;
+ }
+ case 5: {
+ message.nodeIpv4Cidr = reader.string();
+ break;
+ }
+ case 6: {
+ message.servicesIpv4Cidr = reader.string();
+ break;
+ }
+ case 7: {
+ message.clusterSecondaryRangeName = reader.string();
+ break;
+ }
+ case 8: {
+ message.servicesSecondaryRangeName = reader.string();
+ break;
+ }
+ case 9: {
+ message.clusterIpv4CidrBlock = reader.string();
+ break;
+ }
+ case 10: {
+ message.nodeIpv4CidrBlock = reader.string();
+ break;
+ }
+ case 11: {
+ message.servicesIpv4CidrBlock = reader.string();
+ break;
+ }
+ case 13: {
+ message.tpuIpv4CidrBlock = reader.string();
+ break;
+ }
+ case 15: {
+ message.useRoutes = reader.bool();
+ break;
+ }
+ case 16: {
+ message.stackType = reader.int32();
+ break;
+ }
+ case 17: {
+ message.ipv6AccessType = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a IPAllocationPolicy message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.container.v1.IPAllocationPolicy} IPAllocationPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IPAllocationPolicy.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a IPAllocationPolicy message.
+ * @function verify
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ IPAllocationPolicy.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.useIpAliases != null && message.hasOwnProperty("useIpAliases"))
+ if (typeof message.useIpAliases !== "boolean")
+ return "useIpAliases: boolean expected";
+ if (message.createSubnetwork != null && message.hasOwnProperty("createSubnetwork"))
+ if (typeof message.createSubnetwork !== "boolean")
+ return "createSubnetwork: boolean expected";
+ if (message.subnetworkName != null && message.hasOwnProperty("subnetworkName"))
+ if (!$util.isString(message.subnetworkName))
+ return "subnetworkName: string expected";
+ if (message.clusterIpv4Cidr != null && message.hasOwnProperty("clusterIpv4Cidr"))
+ if (!$util.isString(message.clusterIpv4Cidr))
+ return "clusterIpv4Cidr: string expected";
+ if (message.nodeIpv4Cidr != null && message.hasOwnProperty("nodeIpv4Cidr"))
+ if (!$util.isString(message.nodeIpv4Cidr))
+ return "nodeIpv4Cidr: string expected";
+ if (message.servicesIpv4Cidr != null && message.hasOwnProperty("servicesIpv4Cidr"))
+ if (!$util.isString(message.servicesIpv4Cidr))
+ return "servicesIpv4Cidr: string expected";
+ if (message.clusterSecondaryRangeName != null && message.hasOwnProperty("clusterSecondaryRangeName"))
+ if (!$util.isString(message.clusterSecondaryRangeName))
+ return "clusterSecondaryRangeName: string expected";
+ if (message.servicesSecondaryRangeName != null && message.hasOwnProperty("servicesSecondaryRangeName"))
+ if (!$util.isString(message.servicesSecondaryRangeName))
+ return "servicesSecondaryRangeName: string expected";
+ if (message.clusterIpv4CidrBlock != null && message.hasOwnProperty("clusterIpv4CidrBlock"))
+ if (!$util.isString(message.clusterIpv4CidrBlock))
+ return "clusterIpv4CidrBlock: string expected";
+ if (message.nodeIpv4CidrBlock != null && message.hasOwnProperty("nodeIpv4CidrBlock"))
+ if (!$util.isString(message.nodeIpv4CidrBlock))
+ return "nodeIpv4CidrBlock: string expected";
+ if (message.servicesIpv4CidrBlock != null && message.hasOwnProperty("servicesIpv4CidrBlock"))
+ if (!$util.isString(message.servicesIpv4CidrBlock))
+ return "servicesIpv4CidrBlock: string expected";
+ if (message.tpuIpv4CidrBlock != null && message.hasOwnProperty("tpuIpv4CidrBlock"))
+ if (!$util.isString(message.tpuIpv4CidrBlock))
+ return "tpuIpv4CidrBlock: string expected";
+ if (message.useRoutes != null && message.hasOwnProperty("useRoutes"))
+ if (typeof message.useRoutes !== "boolean")
+ return "useRoutes: boolean expected";
+ if (message.stackType != null && message.hasOwnProperty("stackType"))
+ switch (message.stackType) {
+ default:
+ return "stackType: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ if (message.ipv6AccessType != null && message.hasOwnProperty("ipv6AccessType"))
+ switch (message.ipv6AccessType) {
+ default:
+ return "ipv6AccessType: enum value expected";
+ case 0:
+ case 1:
+ case 2:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a IPAllocationPolicy message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.container.v1.IPAllocationPolicy} IPAllocationPolicy
+ */
+ IPAllocationPolicy.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.container.v1.IPAllocationPolicy)
+ return object;
+ var message = new $root.google.container.v1.IPAllocationPolicy();
+ if (object.useIpAliases != null)
+ message.useIpAliases = Boolean(object.useIpAliases);
+ if (object.createSubnetwork != null)
+ message.createSubnetwork = Boolean(object.createSubnetwork);
+ if (object.subnetworkName != null)
+ message.subnetworkName = String(object.subnetworkName);
+ if (object.clusterIpv4Cidr != null)
+ message.clusterIpv4Cidr = String(object.clusterIpv4Cidr);
+ if (object.nodeIpv4Cidr != null)
+ message.nodeIpv4Cidr = String(object.nodeIpv4Cidr);
+ if (object.servicesIpv4Cidr != null)
+ message.servicesIpv4Cidr = String(object.servicesIpv4Cidr);
+ if (object.clusterSecondaryRangeName != null)
+ message.clusterSecondaryRangeName = String(object.clusterSecondaryRangeName);
+ if (object.servicesSecondaryRangeName != null)
+ message.servicesSecondaryRangeName = String(object.servicesSecondaryRangeName);
+ if (object.clusterIpv4CidrBlock != null)
+ message.clusterIpv4CidrBlock = String(object.clusterIpv4CidrBlock);
+ if (object.nodeIpv4CidrBlock != null)
+ message.nodeIpv4CidrBlock = String(object.nodeIpv4CidrBlock);
+ if (object.servicesIpv4CidrBlock != null)
+ message.servicesIpv4CidrBlock = String(object.servicesIpv4CidrBlock);
+ if (object.tpuIpv4CidrBlock != null)
+ message.tpuIpv4CidrBlock = String(object.tpuIpv4CidrBlock);
+ if (object.useRoutes != null)
+ message.useRoutes = Boolean(object.useRoutes);
+ switch (object.stackType) {
+ default:
+ if (typeof object.stackType === "number") {
+ message.stackType = object.stackType;
+ break;
+ }
+ break;
+ case "STACK_TYPE_UNSPECIFIED":
+ case 0:
+ message.stackType = 0;
+ break;
+ case "IPV4":
+ case 1:
+ message.stackType = 1;
+ break;
+ case "IPV4_IPV6":
+ case 2:
+ message.stackType = 2;
+ break;
+ }
+ switch (object.ipv6AccessType) {
+ default:
+ if (typeof object.ipv6AccessType === "number") {
+ message.ipv6AccessType = object.ipv6AccessType;
+ break;
+ }
+ break;
+ case "IPV6_ACCESS_TYPE_UNSPECIFIED":
+ case 0:
+ message.ipv6AccessType = 0;
+ break;
+ case "INTERNAL":
+ case 1:
+ message.ipv6AccessType = 1;
+ break;
+ case "EXTERNAL":
+ case 2:
+ message.ipv6AccessType = 2;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a IPAllocationPolicy message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {google.container.v1.IPAllocationPolicy} message IPAllocationPolicy
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ IPAllocationPolicy.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.useIpAliases = false;
+ object.createSubnetwork = false;
+ object.subnetworkName = "";
+ object.clusterIpv4Cidr = "";
+ object.nodeIpv4Cidr = "";
+ object.servicesIpv4Cidr = "";
+ object.clusterSecondaryRangeName = "";
+ object.servicesSecondaryRangeName = "";
+ object.clusterIpv4CidrBlock = "";
+ object.nodeIpv4CidrBlock = "";
+ object.servicesIpv4CidrBlock = "";
+ object.tpuIpv4CidrBlock = "";
+ object.useRoutes = false;
+ object.stackType = options.enums === String ? "STACK_TYPE_UNSPECIFIED" : 0;
+ object.ipv6AccessType = options.enums === String ? "IPV6_ACCESS_TYPE_UNSPECIFIED" : 0;
+ }
+ if (message.useIpAliases != null && message.hasOwnProperty("useIpAliases"))
+ object.useIpAliases = message.useIpAliases;
+ if (message.createSubnetwork != null && message.hasOwnProperty("createSubnetwork"))
+ object.createSubnetwork = message.createSubnetwork;
+ if (message.subnetworkName != null && message.hasOwnProperty("subnetworkName"))
+ object.subnetworkName = message.subnetworkName;
+ if (message.clusterIpv4Cidr != null && message.hasOwnProperty("clusterIpv4Cidr"))
+ object.clusterIpv4Cidr = message.clusterIpv4Cidr;
+ if (message.nodeIpv4Cidr != null && message.hasOwnProperty("nodeIpv4Cidr"))
+ object.nodeIpv4Cidr = message.nodeIpv4Cidr;
+ if (message.servicesIpv4Cidr != null && message.hasOwnProperty("servicesIpv4Cidr"))
+ object.servicesIpv4Cidr = message.servicesIpv4Cidr;
+ if (message.clusterSecondaryRangeName != null && message.hasOwnProperty("clusterSecondaryRangeName"))
+ object.clusterSecondaryRangeName = message.clusterSecondaryRangeName;
+ if (message.servicesSecondaryRangeName != null && message.hasOwnProperty("servicesSecondaryRangeName"))
+ object.servicesSecondaryRangeName = message.servicesSecondaryRangeName;
+ if (message.clusterIpv4CidrBlock != null && message.hasOwnProperty("clusterIpv4CidrBlock"))
+ object.clusterIpv4CidrBlock = message.clusterIpv4CidrBlock;
+ if (message.nodeIpv4CidrBlock != null && message.hasOwnProperty("nodeIpv4CidrBlock"))
+ object.nodeIpv4CidrBlock = message.nodeIpv4CidrBlock;
+ if (message.servicesIpv4CidrBlock != null && message.hasOwnProperty("servicesIpv4CidrBlock"))
+ object.servicesIpv4CidrBlock = message.servicesIpv4CidrBlock;
+ if (message.tpuIpv4CidrBlock != null && message.hasOwnProperty("tpuIpv4CidrBlock"))
+ object.tpuIpv4CidrBlock = message.tpuIpv4CidrBlock;
+ if (message.useRoutes != null && message.hasOwnProperty("useRoutes"))
+ object.useRoutes = message.useRoutes;
+ if (message.stackType != null && message.hasOwnProperty("stackType"))
+ object.stackType = options.enums === String ? $root.google.container.v1.StackType[message.stackType] === undefined ? message.stackType : $root.google.container.v1.StackType[message.stackType] : message.stackType;
+ if (message.ipv6AccessType != null && message.hasOwnProperty("ipv6AccessType"))
+ object.ipv6AccessType = options.enums === String ? $root.google.container.v1.IPv6AccessType[message.ipv6AccessType] === undefined ? message.ipv6AccessType : $root.google.container.v1.IPv6AccessType[message.ipv6AccessType] : message.ipv6AccessType;
+ return object;
+ };
+
+ /**
+ * Converts this IPAllocationPolicy to JSON.
+ * @function toJSON
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ IPAllocationPolicy.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for IPAllocationPolicy
+ * @function getTypeUrl
+ * @memberof google.container.v1.IPAllocationPolicy
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ IPAllocationPolicy.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.container.v1.IPAllocationPolicy";
+ };
+
+ return IPAllocationPolicy;
+ })();
+
+ v1.Cluster = (function() {
+
+ /**
+ * Properties of a Cluster.
+ * @memberof google.container.v1
+ * @interface ICluster
+ * @property {string|null} [name] Cluster name
+ * @property {string|null} [description] Cluster description
+ * @property {number|null} [initialNodeCount] Cluster initialNodeCount
+ * @property {google.container.v1.INodeConfig|null} [nodeConfig] Cluster nodeConfig
+ * @property {google.container.v1.IMasterAuth|null} [masterAuth] Cluster masterAuth
+ * @property {string|null} [loggingService] Cluster loggingService
+ * @property {string|null} [monitoringService] Cluster monitoringService
+ * @property {string|null} [network] Cluster network
+ * @property {string|null} [clusterIpv4Cidr] Cluster clusterIpv4Cidr
+ * @property {google.container.v1.IAddonsConfig|null} [addonsConfig] Cluster addonsConfig
+ * @property {string|null} [subnetwork] Cluster subnetwork
+ * @property {Array.|null} [nodePools] Cluster nodePools
+ * @property {Array.|null} [locations] Cluster locations
+ * @property {boolean|null} [enableKubernetesAlpha] Cluster enableKubernetesAlpha
+ * @property {Object.|null} [resourceLabels] Cluster resourceLabels
+ * @property {string|null} [labelFingerprint] Cluster labelFingerprint
+ * @property {google.container.v1.ILegacyAbac|null} [legacyAbac] Cluster legacyAbac
+ * @property {google.container.v1.INetworkPolicy|null} [networkPolicy] Cluster networkPolicy
+ * @property {google.container.v1.IIPAllocationPolicy|null} [ipAllocationPolicy] Cluster ipAllocationPolicy
+ * @property {google.container.v1.IMasterAuthorizedNetworksConfig|null} [masterAuthorizedNetworksConfig] Cluster masterAuthorizedNetworksConfig
+ * @property {google.container.v1.IMaintenancePolicy|null} [maintenancePolicy] Cluster maintenancePolicy
+ * @property {google.container.v1.IBinaryAuthorization|null} [binaryAuthorization] Cluster binaryAuthorization
+ * @property {google.container.v1.IClusterAutoscaling|null} [autoscaling] Cluster autoscaling
+ * @property {google.container.v1.INetworkConfig|null} [networkConfig] Cluster networkConfig
+ * @property {google.container.v1.IMaxPodsConstraint|null} [defaultMaxPodsConstraint] Cluster defaultMaxPodsConstraint
+ * @property {google.container.v1.IResourceUsageExportConfig|null} [resourceUsageExportConfig] Cluster resourceUsageExportConfig
+ * @property {google.container.v1.IAuthenticatorGroupsConfig|null} [authenticatorGroupsConfig] Cluster authenticatorGroupsConfig
+ * @property {google.container.v1.IPrivateClusterConfig|null} [privateClusterConfig] Cluster privateClusterConfig
+ * @property {google.container.v1.IDatabaseEncryption|null} [databaseEncryption] Cluster databaseEncryption
+ * @property {google.container.v1.IVerticalPodAutoscaling|null} [verticalPodAutoscaling] Cluster verticalPodAutoscaling
+ * @property {google.container.v1.IShieldedNodes|null} [shieldedNodes] Cluster shieldedNodes
+ * @property {google.container.v1.IReleaseChannel|null} [releaseChannel] Cluster releaseChannel
+ * @property {google.container.v1.IWorkloadIdentityConfig|null} [workloadIdentityConfig] Cluster workloadIdentityConfig
+ * @property {google.container.v1.IMeshCertificates|null} [meshCertificates] Cluster meshCertificates
+ * @property {google.container.v1.ICostManagementConfig|null} [costManagementConfig] Cluster costManagementConfig
+ * @property {google.container.v1.INotificationConfig|null} [notificationConfig] Cluster notificationConfig
+ * @property {google.container.v1.IConfidentialNodes|null} [confidentialNodes] Cluster confidentialNodes
+ * @property {google.container.v1.IIdentityServiceConfig|null} [identityServiceConfig] Cluster identityServiceConfig
+ * @property {string|null} [selfLink] Cluster selfLink
+ * @property {string|null} [zone] Cluster zone
+ * @property {string|null} [endpoint] Cluster endpoint
+ * @property {string|null} [initialClusterVersion] Cluster initialClusterVersion
+ * @property {string|null} [currentMasterVersion] Cluster currentMasterVersion
+ * @property {string|null} [currentNodeVersion] Cluster currentNodeVersion
+ * @property {string|null} [createTime] Cluster createTime
+ * @property {google.container.v1.Cluster.Status|null} [status] Cluster status
+ * @property {string|null} [statusMessage] Cluster statusMessage
+ * @property {number|null} [nodeIpv4CidrSize] Cluster nodeIpv4CidrSize
+ * @property {string|null} [servicesIpv4Cidr] Cluster servicesIpv4Cidr
+ * @property {Array.